知识点五:数据的操作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. XPath中的轴

    这个博客中有一系列的例子,不仅有child的例子:http://www.cnblogs.com/zhaozhan/archive/2009/09/10/1563723.html XPath 是一门在 ...

  2. android开启线程,异步处理数据实例

    package com.example.sywang2; import com.zds.os.R; import android.os.Bundle; import android.os.Handle ...

  3. (10) android控件-date

    1.TimePicker <TimePicker android:id="@+id/timePicker4" android:layout_width="wrap_ ...

  4. Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)

    摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 这是泥瓦匠的第104篇原创 文章工程:* JDK 1.8* M ...

  5. codechef Tree and Queries Solved

    题目链接: https://www.codechef.com/problems/IITK1P10 大概是:修改点值,求子树节点为0有多少个, DFS序后,BIT 询问,修改 ;    {        ...

  6. mysql 隔离级别与间隙锁等

    数据库隔离级 SQL标准中DB隔离级别有: read uncommitted:可以读到其它transaction 未提交数据 read committed:可以读到其它transaction 已提交数 ...

  7. android CheckBox使用和状态获得

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...

  8. 团购类网站倒计时的js实现

    一.如火如荼的团购网站 根据易观国际提供的统计数据,截至2010年6月,中国市场团购网站数量已经突破400家.国内团购潮从今年2月份开始出现,在4~6月出现高峰,尤其是今年5月,一些大的网站如爱帮网. ...

  9. 干货--安装eclipse-hadoop-plugin插件及HDFS API编程两个遇到的重要错误的解决

    在Windows的eclipse上写hdfs的API程序,都会遇到两个错误,在网上查了很多资料,都没有解决的办法,经过了很多时间的研究,终于把这个问题解决了 错误是 1.java.io.IOExcep ...

  10. Python基础语法08--MySql应用

    python操作mysql数据库 Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口. DB-API 是一个规范. 它定义了一系列 ...