首页 > 数据库技术 > 详细

MySQL_基础_DML数据操纵语言

时间:2018-07-18 11:41:26      阅读:165      评论:0      收藏:0      [点我收藏+]

插入语句

语法:    
    INSERT INTO 表名 [(列名1, 列名2,...)] VALUES (值1, 值2,...);
    INSERT INTO 表名 SET 列名1=值1, 列名2=值2 ...;
    INSERT INTO 表名 [(列名1, 列名2,...)] SELECT ...;

案例:
    1、插入单行数据
    INSERT INTO student(id,name,age) VALUES(1,小明,6);
    INSERT INTO student SET id=1, name=小明, age=6;

    2、插入多行数据
    INSERT INTO student(id,name,age) VALUES(1,小明,6),(2,小红,5),(3,小强,7);

    3、插入子查询数据
    INSERT INTO student(id,name,age) SELECT 1,小明,6;

 

修改语句

语法:
    UPDATE 表名 SET 列名1=值1 [, 列名2=值2, ...] 
    [WHERE 条件];

案例:
    1、修改单表数据
    UPDATE student SET age=7 WHERE name=小明;

    2、修改多表数据
    sql92语法:UPDATE student s,class c SET s.age=5,c. NAME=向日葵小班 WHERE s.class_id=c.id and c.id = 1;
    sql99语法:UPDATE student s INNER JOIN class c ON s.class_id=c.id SET s.age=5,c.name=向日葵小班 WHERE c.id = 1;

 

删除语句

方式一:
    语法:
        DELETE FROM table [WHERE condition];

    案例:
        1、删除单行数据
        DELETE FROM student WHERE id=1;

        2、删除多表数据
        sql92语法:DELETE s,c FROM student s,class c WHERE s.class_id = c.id AND c.id = 1;
        sql99语法:DELETE s,c FROM student s INNER JOIN class c ON s.class_id = c.id WHERE c.id = 1;

方式二:
    语法:
        TRUNCATE TABLE table;
    
    案例:
        1、清空单表所有数据
        TRUNCATE TABLE student;
        
区别:
                    DELETE                TRUNCATE
    删除方式:        逐条删除              先摧毁表,再重建
    删除后插入:      自增ID为断点值         自增ID为1
    速度:           慢                  快
    返回值:        有                  没有
    WHERE条件:      可以                   不可以
    日志:           记录                   不记录
    触发器:        触发                   不触发
    回滚:           可以                   不可以
    闪回:           可以                   不可以
    释放空间:     不会                   会
    产生碎片:     会                  不会

 

MySQL_基础_DML数据操纵语言

原文:https://www.cnblogs.com/Small-music/p/9274283.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!