前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据库概念之DML语句

数据库概念之DML语句

作者头像
vincentbbli
发布2021-08-18 11:56:14
3050
发布2021-08-18 11:56:14
举报
文章被收录于专栏:vincent随笔

DML_数据库修改语句(DML)

Delete语句

每次删除都删除一行的所有属性值(一次删一行)而不能只删掉某些属性

语法:

delete from r where p; 将满足“使条件p为真”的元组从r表中删除

重点在于where的子查询,跟前面的查询语句十分相似 将一个表的所有元组全部删除:

delete from r; (一次删除一行) insert into 插入语句 形式1: 语法: insert into R_name values(atttr1_value,attr2_value,……); 或者: insert into R_name(attr1_name,attr2_name,……) values(attr1_value,attr2_value,……);

推荐第二种写法,因为DBMS有自己的一套插入步骤,虽然默认的元组顺序是建表的时候的顺序,但是有时候会出错,因此建议写表的完整形式。 (一次插入一行)

insert 的时候要注意属性的数据类型,比如如果是字符型就要加’'号

形式2:

insert into R_name select attr1_name,attr2_name,…… from R2_name where p; 将表R2的一些元组插入表R(一次插入多行)

可以将某一些属性的值设置为某个值,比如:将薪资全部设置为18000,只需要将select语句的salary属性改为18000即可

update 更新语句

语法:

update R_name set attr_name=(operation) where P;

注意:不能使用复合的运算符,比如salary=salary*0.15不能写成salary=0.15,跟编程语言稍有不同*

set一次可以更新多个属性,不过set后面的属性数量跟=号后面的属性数量必须相同

如:set tot_cred,course_id=(select tot_cred,course_id from relation2)

在set字句中加上case语句,分条件更新 (很多DBMS都不支持)

高级SQL特性

以一张现有的表的结构建一张新表:

create table temp_account like account

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017/04/01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • DML_数据库修改语句(DML)
    • Delete语句
      • update 更新语句
        • 高级SQL特性
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档