DML 操作表中数据
DML 是对于表中的记录进行增删改操作
一、添加数据
语法格式:
insert into 表名[字段名] values[字段值]
表名:表示往那张表中添加数据
(字段名1,字段名2,...):要给哪些字段设置值
values(值1,值2,...):设置具体的值
1、插入全部字段
① 所有的字段名都写出来
INSERT INTO 表名 (字段名 1, 字段名 2, 字段名 3…) VALUES (值 1, 值 2, 值 3);
② 不写字段名,默认为全部字段名
INSERT INTO 表名 VALUES (值 1, 值 2, 值 3…);
2、插入部分数据
INSERT INTO 表名 (字段名 1, 字段名 2, ...) VALUES (值 1, 值 2, ...);
Tips:没有添加数据的字段会使用 NULL
3、注意事项
① 插入的数据应与字段的数据类型相同
② 如果表名后没有定义列名,则默认给所有列添加值
③ 除了数字类型,其他类型需要使用引号(单引号或双引号)引起来
④ 数据的大小应在列的规定范围内,如:不能将长度为20的放入长度为10的列中。
⑤ 不指定列或使用 null,表示插入空值
4、蠕虫复制
① 蠕虫复制:将一张已经存在的表中的数据复制到另一张表中。
② 语法格式
- 将表名2中的所有的列复制到表名1中
- 将表名2中的所有的列复制到表名1中
INSERT INTO 表名 1 SELECT * FROM 表名 2;
- 只复制部分列
INSERT INTO 表名 1(列 1, 列 2) SELECT 列 1, 列 2 FROM student;
Demo:
insert into student2(name,age) select name,age from student;
二、修改数据
语法格式:
update 表名 set 列名=值 [where 条件表达式];
update 表名:需要更新的表名
set:修改的列值
where :符合条件的记录才更新
1、不带条件修改数据(修改所有的行)
update 表名 set 字段名=值;
2、带条件修改数据
update 表名 set 字段名=值 where 字段名=值;
三、删除数据
语法格式:
DELETE FROM 表名 [WHERE 条件表达式]
如果没有指定 where 子句,MySQL 表中的所有记录将被删除,可以在 where 子句中指定任何条件。
1、不带条件删除数据
delete from 表名;
2、带条件删除数据
delete from 表名 where 字段名=值;
3、使用 truncate 删除表中所有记录
truncate table 表名;
4、truncate 和 delete 的区别
- truncate table 表名 ——推荐使用,相当于删除表的结构,再创建一张一样的表。
- delete from 表名——删除所有记录,不推荐使用,有多少记录就会执行多少次删除操作。
DML 操作表中数据的更多相关文章
- (4)Oracle基础--操作表中数据
· 添加数据 <1> INSERT 语句 ① 向表中所有字段添加值 语法: INSERT INTO table_name (column1,column2...) VALUES(val ...
- pl/sql中误删表中数据并提交恢复办法
最近在操作表中数据时,删除了表中数据,但是又想恢复,后来查到了官方的一篇文档,发现还蛮有用的,如下: 在pl/sql中运行,select * from A as of TIMESTAMP to_tim ...
- 浅谈 sql 中数据的约束
数据约束 --对用户操作表的数据进行约束 1.默认值 --当用户对使用默认值的字段不插入值的时候,就使用默认值 1)对默认值字段插入null是可以的. 2)对默认值字段可以插入非null [例如:ad ...
- 数据库 使用DML语句更改数据
使用DML语句更改数据 添加新数据: 插入单行语句: Insert into 表名(列名)values(‘值’); 插入多行:insert into 表名(列名,…..) Values(‘值’,’值’ ...
- Hive中数据的加载和导出
原文:http://blog.javachen.com/2014/06/09/hive-data-manipulation-language.html 关于 Hive DML 语法,你可以参考 apa ...
- (MariaDB/MySQL)之DML(1):数据插入
本文目录: 1.insert和replace插入数据 1.1 insert into values() 1.2 insert into set 1.3 insert into select_state ...
- 使用DB查询分析器实现异构数据源中数据表的相互访问
1 引言 硕士程序员马根峰(CSDN专访马根峰:海量数据处理与分析大师的中国本土程序员)推出的个人作品----万能数据库查询分析器,中文版本DB 查询分析器.英文版本<DB Query A ...
- mysql--对行(表中数据)的增删改查
一.插入数据(增加)insert 1.插入数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n); #指定字段来插入数据,插 ...
- SQL-表的操作(创建表,删除表,更改列,插入新行,更改行的值,删除表中数据)
一,操作表及列 1.创建表: CREATE TABLE test (ID int PRIMARY KEY IDENTITY,Name varchar(20) ) 2.删除表 DROP TABLE t ...
随机推荐
- 运行OpenGL红宝书第9版源码时Visual Studio提示“无法启动程序...ALL_BUILD。拒绝访问“的问题的解决办法
问题描述: OpenGL红宝书第9版源码采用CMake编译后,用相应的Visual Studio(如VS2012)打开“vermilion9.sln”解决方案,并运行时Visual Studio提示“ ...
- vue-vuex的使用
做后台项目的时候,有时候会需要用到状态管理,VUEX就能够很好的为我们解决好这个问题. 安装 VUEX npm install vuex --save 具体使用: 建立 src/store/index ...
- 【转】Jupyter Notebook主题字体设置及自动代码补全
Jupyter Notebook用久了就离不开了,然而自带的主题真的不忍直视.为了视力着想,为了自己看起来舒服,于是折腾了一番..在github上发现了一个jupyter-themes工具,可以通过p ...
- 不使用BASE64Encoder、BASE64Decoder
BASE64Encoder/BASE64Decoder类在sun.misc包下,是sun公司的内部方法,后期有删除的潜在可能,建议使用apache commons.codec下的Base64替代. m ...
- plsql 记录型变量
set serveroutput on declare emplist emp%rowtype; begin ; dbms_output.put_line(emplist.ename||'的薪水是'| ...
- TensorFlow.js-机器学习
一.参考学习 https://blog.csdn.net/Quincylk/article/details/85340004 http://www.tensorfly.cn/tfdoc/get_sta ...
- [LeetCode] 68. Text Justification 文本对齐
Given an array of words and a length L, format the text such that each line has exactly L characters ...
- rConfig v3.9.2 授权认证与未授权RCE (CVE-2019-16663) 、(CVE-2019-16662)
rConfig v3.9.2 authenticated and unauthenticated RCE (CVE-2019-16663) and (CVE-2019-16662) 原文:https: ...
- LeetCode 22. 括号生成(Generate Parentheses)
22. 括号生成 22. Generate Parentheses 题目描述 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合. 例如,给出 n = 3,生成结 ...
- 【程序人生】Oracle正式公布裁员,1600人,补偿N+6
早些时候Oracle内部员工透漏,Oracle中国研发中心(CDC)或彻底关闭,涉及约1600名工程师的命运. 今天甲骨文正式公布裁员,整个中国研发中心关闭,补偿是全员n+6,包括北京,苏州,南京,上 ...