知识点五:数据的操作DML(24,25,36)

插入数据:

 --测试插入记录INSERT
CREATE TABLE IF NOT EXISTS user13(
id TINYINT UNSIGNED AUTO_INCREMENT KEY,
username VARCHAR(20) NOT NULL UNIQUE,
password CHAR(32) NOT NULL,
email VARCHAR(50) NOT NULL DEFAULT '382771946@qq.com',
age TINYINT UNSIGNED DEFAULT 18
);

默认数据

  不指定具体的字段名:

    INSERT [INTO] tbl_name VALUES|VALUE(值…)

 --插入数据不指定具体的字段名
INSERT INTO user13 VALUES(1,'KING','KING','KING@qq.com',20);
INSERT INTO user13 VALUE(2,'QUEEN','QUEEN','QUEEN@qq.com',30);

插入数据不指定具体的字段名测试

  列出指定字段:

    INSERT [INTO] tbl_name(字段名1,…) VALUES|VALUE(值1,…)

 --列出指定字段:
INSERT INTO user13(username,password) VALUE('A','A');
INSERT INTO user13(password,username) VALUE('BBB','B');

列出指定字段测试

  同时插入多条记录:

    INSERT [INTO] tbl_name[(字段名…)] VALUES(值1…),(值2…)

 --同时插入多条记录:
INSERT INTO user13 VALUE(5,'C','CCC','CCC@qq.com',35),
(6,'D','DDD','DDD@qq.com',31);

同时插入多条记录测试

  通过SET形式插入记录:

    INSERT [INTO] tbl_name SET 字段名称=值,…

 --通过INSERT SET形式插入记录:
INSERT INTO user13 SET id=11,username='test',password='test',email='test@qq.com',age=48;
INSERT INTO user13 SET username='test1',password='test1';

INSERT SET测试

  将查询的结果插入到表中:

    INSERT [INTO] tbl_name[(字段名称,…)] SELECT 字段名称 tbl_name [WHERE 条件]

 --将查询的结果插入到表中:
CREATE TABLE IF NOT EXISTS user14(
id TINYINT UNSIGNED AUTO_INCREMENT KEY,
username VARCHAR(20) NOT NULL UNIQUE
);
INSERT user14 SELECT id,username from user13;

将查询的结果插入到另一张表测试

更新数据:

UPDATE tbl_name SET 字段名称=值,… [WHERE 条件] [ORDER BY 字段名称][LIMIT 限制条件]

 --将用户表中所有用户年龄更新为15
UPDATE user13 SET age=15; --将第一条记录的password,email,age 改变
UPDATE user13 SET password='king123',email='123@qq.com',age=99 WHERE id=1;
--将id大于三的age-6
UPDATE user13 SET age=age-6 WHERE id>3;
--将username为"A"的,age设置为默认值
UPDATE user13 SET age=DEFAULT WHERE username='A';

数据更新测试

删除数据:

DELETE FROM tbl_name [WHERE 条件][ORDER BY 字段名称][LIMIT 条件]

 --删除user14表中的记录:
DELETE FROM user14;
--删除user13表中id为1的用户
DELETE FROM user13 WHERE id=1;

删除数据测试

 -- 更新用户名为4位的用户,让其已有年龄-3
UPDATE cms_user SET age=age-3 WHERE username LIKE '____'; -- 更新前3条记录,让已有年龄+10
UPDATE cms_user SET age=age+10 LIMIT 3;
--不可以设值偏移量
--UPDATE cms_user SET age=age+10 LIMIT 0,3; -- 按照id降序排列,更新前3条 UPDATE cms_user SET age=age+10 ORDER BY id DESC LIMIT 3; -- 删除用户性别为男的用户,按照年龄降序排列,删除1前一条记录 DELETE FROM cms_user WHERE sex='男' ORDER BY age DESC LIMIT 1;

更新和删除数据ORDER BY和LIMIT

彻底清空数据表:

TRUNCATE [TABLE] tnl_name

注释

TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。

DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。

对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。

TRUNCATE TABLE 不能用于参与了索引视图的表。

MYSQL初级学习笔记三:数据的操作DML!(视频序号:初级_24,25,36)的更多相关文章

  1. Windows phone 8 学习笔记(2) 数据文件操作

    原文:Windows phone 8 学习笔记(2) 数据文件操作 Windows phone 8 应用用于数据文件存储访问的位置仅仅限于安装文件夹.本地文件夹(独立存储空间).媒体库和SD卡四个地方 ...

  2. Windows phone 8 学习笔记(2) 数据文件操作(转)

    Windows phone 8 应用用于数据文件存储访问的位置仅仅限于安装文件夹.本地文件夹(独立存储空间).媒体库和SD卡四个地方.本节主要讲解它们的用法以及相关限制性.另外包括本地数据库的使用方式 ...

  3. Mongodb学习笔记三(Mongodb索引操作及性能测试)

    第三章 索引操作及性能测试 索引在大数据下的重要性就不多说了 下面测试中用到了mongodb的一个客户端工具Robomongo,大家可以在网上选择下载.官网下载地址:http://www.robomo ...

  4. SpringMVC 学习笔记(三)数据的校验

    34. 尚硅谷_佟刚_SpringMVC_数据绑定流程分析.avi 例如:在jsp中输入一个String字符串类型,需要转换成Date类型的流程如下 convertservice对传入的数据进行转换 ...

  5. MYSQL进阶学习笔记三:MySQL流程控制语句!(视频序号:进阶_7-10)

    知识点四:MySQL流程控制语句(7-10) 选择语句: (IF ELSE ELSE IF CASE 分支)IFNULL函数 IF语法: 语法规则: IF search_condition THEN ...

  6. linux初级学习笔记三:linux操作系统及常用命令,及如何复制和移动文件!(视频序号:02_4)

    本节学习的命令:cp,mv,install,du,read 本节学习的技能:文件的移动与复制 cp( copy):复制和移动文件 cp SRC DEST -r:递归复制一个目录及其目录中的所有文件 - ...

  7. vue学习笔记:数据渲染操作

    {{xxx}} 基本的插值表达式 插值表达式 使用两个大括号 {{ data中定义的数据名 }} 可以将数据插入到指定的位置 这种写法不仅可以显示data属性里定义的值,也可以书写js中的表达式,可以 ...

  8. LUA学习笔记三·时间等操作系统库

    1.构造时间 2.时间制定格式输出 3.计时器(闭包)os.difftime (t2, t1) 返回以秒计算的时刻 t1 到 t2 的差值. (这里的时刻是由 os.time 返回的值). 在 POS ...

  9. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

随机推荐

  1. hihocoder #1290 : Demo Day

    传送门 #1290 : Demo Day 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 You work as an intern at a robotics star ...

  2. Security arrangements for extended USB protocol stack of a USB host system

    Security arrangements for a universal serial bus (USB) protocol stack of a USB host system are provi ...

  3. 标准C程序设计七---11

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  4. R语言入门视频笔记--5--自定义函数

    自定义函数 你可以输出一段代码,创建一个你自己定义的函数 蛋是如果你两个自定义函数的名字重复的话,后面的会把前面的替换掉 举个栗子: hanshu1 <- function(x)  sqrt(v ...

  5. CentOS配置DHCP服务器

    知识储备 bootp (boot protocol) 早前用于无盘工作站,dhcp的前身 IP初次分配完成,以后固定mac和IP绑定关系 dhcp基础 获取IP步骤 step1: Client dhc ...

  6. LeetCode OJ--Evaluate Reverse Polish Notation

    http://oj.leetcode.com/problems/evaluate-reverse-polish-notation/ 栈使用 #include <iostream> #inc ...

  7. android 服务

    1.创建服务 Exported:是否允许除了当前程序之外的其他程序访问这个服务 Enable:是否启用这个服务 点击完成后自动生成 import android.app.Service; import ...

  8. (44)C#网络2

    一.用SmtpClient类发送邮件 允许应用程序使用简单邮件传输协议 (SMTP) 发送电子邮件 using System.Net.Mail; SmtpClient smtpClient = new ...

  9. Java Socket应用

    Java Socket(套接字)通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.应用程序通常通过"套接字"向网络发出请求或者应答网络请求.

  10. OSI模型详解

    OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 . 完成中继功能的节点通常称为中继系统.在OSI七层模型中,处于 ...