MySQL 数据操纵语言(DML)
来源:互联网 发布:王子文身高知乎 编辑:程序博客网 时间:2024/04/28 09:24
数据操纵语言主要用来处理数据库中的数据内容。DML允许用户对数据库中的数据进行查询、插入、更新和删除等操作。
基本命令:
INSERT;
UPDATE;
DELETE;
MERGE.
1、INSERT命令用于向一个已有的表插入新行
创建表的目的是利用表来存储和管理数据。实现数据存储的前提是向表中插入数据。
1.1 把数据插入到表
INSERT INTO table_name VALUES(‘value1’,’value2’,…);
列名可以省略,当省略列名时,默认是表中的所有列名,列名顺序为表定义中列的先后顺序;
VALUES列里包含表里的每一列,每个值之间是以逗号分隔的;
当某列的数据类型是字符、日期和时间数据类型的值必须以单引号包围,而数值或NULL值就不必了;
值的数量与顺序要与列名的数量与顺序一致,值的类型与列名的类型一致。
1.2 给表里指定列插入数据
INSERT INTO TABLE_NAME(‘column1’,’column2’) VALUES (‘VALUE1’,’VALUE2’);
1.3 从另一个表里插入数据
INSERT 和SELECT语句的组合可以实现;
INSERT INTO TABLE_NAME [(‘columns’,’column2’)] SELECT [*|(‘column1’,’column2’)] FROM TABLE_NAME;
1.4 插入NULL值
INSERT INTO TABLE_NAME VALUES (‘column1’,NULL ,’column2’)
NULL值对应字段的正确位置上。
2、UPDATE修改现有数据
UPDATE语句用于更新或修改满足条件的现有记录。
2.1 更新一列的数据
UPDATE table_name SET column_name = expression [where condition];
2.2 更新一条或多记录里的多个字段
update table_name set column1=’value’,
[column2=’value2’]
[where condition]
只有一个SET,但是有多个列,每列之间以逗号分隔
2.3 从另一个表里更新
将scott.emp表中编号为7389的员工工作类型改为与编号7920员工的工作相同。
UPDATE scott.emp
SET job=(SELECT job FROM scott.emp WHERE empno = 7920)
WHERE empno=7389;
3、DELETE 从表里删除数据
DELETE命令用于从表里删除整行数据,它不能删除某一列的数据,而是删除行里的全部字段,所以要谨慎使用。
DELETE FROM table_name [WHERE condition];
与删除命令TRUNCATE的区别是:
DELETE命令是逻辑删除,将要删除的行加上删除标记,被删除后可以使用ROLLBACK命令回滚,删除操作时间较长;
TRUNCATE TABLE命令是物理删除,将表中数据永久删除,不能回滚删除操作快。
DELETE命令包含WHERE子句,可以删除表中的部分行;TRUNCATE TABLE 命令只能删除表中所有行。
4.合并表
MERGE语句可以指定两个表进行合并操作,其语法如下:
MERGE INTO table1_name
USING table2_table ON join_condition
WHEN MATCHED THEN UPDATE SET …
WHEN NOT MATCHED THEN INSERT …. VALUES…
table1_name表示需要合并的目标表;
table2_name表示需要合并的源表。
join_condition 表示合并条件;
WHEN MATCHED THEN UPDATE 表示如果符合合并条件,则执行更新操作;
WHEN NOT MATCHED THEN INSERT 表示如果不符合合并条件,则执行插入。
- MySQL 数据操纵语言(DML)
- mysql--数据操纵语言DML
- 数据操纵语言(DML)
- DML(数据操纵语言)
- 数据操纵语言(DML)
- DML 数据操纵语言
- DML数据操纵语言
- MySQL之数据库操纵语言(DML)
- DML—数据操纵语言(转)
- 数据操纵语言(DML)原理
- Oracle:数据操纵语言(DML)-数据插入
- Oracle数据操纵语言(DML)-更新数据
- oracle 数据操纵语言(DML)-简单查询
- MySQL常用DDL(数据库定义语言)、DML(数据操纵语言)、DCL(数据库控制语言)语言整理
- DB2数据库、DML数据操纵语言、DDL数据定义语言
- 数据库操纵语言DML
- 数据库操纵语言DML
- 数据库操纵语言DML
- 学习笔记之openssl、文件加密、CA证书的创建
- Linux之编写运行第一个c语言程序
- test 排序(二分答案)
- 程序生成的四个步骤,Linux动态库与静态库
- 字符串
- MySQL 数据操纵语言(DML)
- ARToolKit 的simpleLite程序分析
- Android实现从左往右TextView淡入淡出渐变效果
- 网络请求库Volley详解
- 关于++和静态变量的一个题
- 构造函数与析构函数
- spring配置文件中配置Action中的scope
- 进程通信——pipe_server
- cs231n:assignment1——Q2: Training a Support Vector Machine