MySQL插入,更新,删除数据
插入
单行插入
1.insert into 表名 values(col1_value,col2_value,...);
- 每个列必须提供一个值,如果没有值,要提供NULL值
- 每个列必须与它在表中定义的次序相同
2.insert into 表名(col1,col2...) values(col1_value,col2_value...);
- values必须与指定的列名次序匹配,不一定按照列在表中的实际出现的次序,即使表结构改变也能正常的工作
注意
如果表的定义允许,在插入时可以省略某些列,表的定义应该如下
- 该列允许为NULL值
- 在表定义时给出默认值,如果插入时不给出值,则使用默认值
多行插入
insert into 表名(col1,col2...) values(col1_value1,col2_value1...),values(col1_value2,col2_value2...),values(col1_value3,col2_value3...);
插入检索出的数据
insert into 表名1(col1,col2...) select col1,col2... from 表名2
- 这条语句插入多少行依赖于表名1中有多少行,如果表名1为空,则没有数据插入,此操作为合法操作
- 它不关心select返回的列名,使用的是列的位置,select中的第一列用于填充表中的第一列等
- select可以使用where过滤数据
拓展
由于数据库是被客户访问,对处理什么请求及什么次序处理是MySQL任务,insert很耗时并且可能降低select语句的性能
insert low_priority into 可以降低insert优先级也使用update和delete
更新
更新的是列,由三部分组成
- 要更新的表
- 列名和他们的值
- 确定要更新的过滤条件
update 表名
-> set 列名=要更新的值
-> where 过滤条件;
注意
- 一定要使用where!!!where!!!where!!!
- 可以在update中使用子查询,能够使select语句检索出的数据更新列数据
- 如果使用update更新多行,在更新时出现一个或多个错误,则整个update操作被取消,恢复到被更新的原来的值,若使用update ignore 表,可以继续更新
- 保证每个表都有主键,像where字句那样使用它
- 使用where之前,先使用select进行测试,保证过滤出正确的记录
删除
删除的是整行
delete from 表名
-> where 过滤条件;
要删除全部的行用
truncate table 表名;
此操作是将原来的表删除并创建一个新表,并不是逐行删除数据
注意
- 一定要使用where!!!where!!!where!!!
- delete删除的是表中的行或所有的行,不删除表本身
- 保证每个表都有主键,像where字句那样使用它
- 使用where之前,先使用select进行测试,保证过滤出正确的记录
- 删除列用update
- 强制实施引用完整性的数据库,这样mysql不允许删除具有与其他表相关联的数据的行
MySQL插入,更新,删除数据的更多相关文章
- oracle插入,更新,删除数据
插入,更新,删除数据 oracle提供了功能丰富的数据库管理语句 包括有效的向数据库中插入数据的insert语句 更新数据的update语句 以及当数据不再使用时删除数据的delete语句 更改数据之 ...
- MariaDB 插入&更新&删除数据(8)
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQ ...
- Mysql添加更新删除数据-表
例如 此处拥有一个表名为 uuser 为表添加新数据 ,'); ,'); ,'); 假如只想添加uid和uname ,'小张'); 那么pas自动填充为NULL. 为表更新数据 这里把小王的pas改成 ...
- 我的MYSQL学习心得(八) 插入 更新 删除
我的MYSQL学习心得(八) 插入 更新 删除 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得( ...
- mysql 插入/更新数据
mysql 插入/更新数据 INSERT 语句 1.一次性列出全部字段的值,例如: INSERT INTO student VALUES('Chenqi','M', 29); INSERT INTO ...
- sqlserver 插入 更新 删除 语句中的 output子句
官方文档镇楼: https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008/ms177564(v=sql.100) 从 ...
- PHP MySQL 插入多条数据
PHP MySQL 插入多条数据 使用 MySQLi 和 PDO 向 MySQL 插入多条数据 mysqli_multi_query() 函数可用来执行多条SQL语句. 以下实例向 "MyG ...
- 使用 MySQLi 和 PDO 向 MySQL 插入多条数据
PHP MySQL 插入多条数据 使用 MySQLi 和 PDO 向 MySQL 插入多条数据 mysqli_multi_query() 函数可用来执行多条SQL语句. 以下实例向 "MyG ...
- MySQL基本SQL语句之数据插入、删除数据和更新数据
一.INSERT插入数据: 方法一:批量插入 基本语法: INSERT INTO tb_name (col1, col2, ...) VALUES (val1, val2, ...)[,(val1, ...
- mySQL 插入,更新和删除数据
插入数据: 语法: INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN ); 如 ...
随机推荐
- 7 Serial Configuration 理解 (一)
reference : ug470- 7 series config.pdf 7系列器件有5种配置接口,每种配置接口对应一种或者多种配置模式和总线位宽.配置时序相对于引脚的CCLK,即使在内部产生C ...
- day 关于生成器的函数
def average(): count=0 toatal=0 average=0 while True: value=yield average toatal+=value count+=1 ave ...
- Nginx部署vue多项目
server { listen 80; server_name test.hehe.com; location /riskcontrol { root /data; try_files $uri $u ...
- ios 手机验证码用户注册(倒计时15秒)
// // ViewController.m // register手机验证码注册 // // Created by zzqqrr on 17/8/28. // Copyright (c) 2017年 ...
- CentOS部署PHP环境
1.安装apache yum -y install httpd httpd-devel 2.启动apache systemctl start httpd.service 检查apache状态 syst ...
- python day14--内置函数二
主要内容: 1.lamda匿名函数 2.sorted() 3.filter() 4.map() 5.递归函数 一.Lamda匿名函数 语法:lamda:参数:返回值 # 计算n的n次⽅方 def fu ...
- HDU 1808 Halloween treats(抽屉原理)
题目传送:http://acm.hdu.edu.cn/showproblem.php?pid=1808 Problem Description Every year there is the same ...
- ecmall 开发一个新模块
要开发新模块,要借鉴原有模块的代码并进行修改. 首先打开目录external/modules 会有一个datacall文件夹,这个文件夹对应的就是一个模块. 复制datacall文件夹,重命名为tes ...
- POWER BI报表服务器混合云初了解
Power BI报表服务器 购买Power BI Premium时,你可以获取2个产品,一个是Power BI Service另外一个是Power BI Report Server. Power BI ...
- lftp的安装
lftp的安装 安装依赖的包 yum -y install make readline-devel gnutls* 解压上传的包 tar -jxf lftp-4.0.1.tar.bz2 cd到解压 ...