zoukankan      html  css  js  c++  java
  • MySQL_DML_数据处理语句

    DML(Data Manipulation Language)
    数据操纵语言,可对表中的数据的增删改:insert update dalete

    • 数据的插入
    /*
    语法:
        插入单行:
            insert into 表名(字段1,字段2,...) values(值1,值2,...);
        插入多行:
            insert into 表名(字段名1,字段名2,...) values(值1,值2,...),(值1,值2,...),(值1,值2,...);
    特点:
        ①字段和值列表一一对应(包含类型、约束等必须匹配)
        ②数值型的值,不用单引号;非数值型的值必须用单引号
        ③字段顺序要求
    */
    #案例1:要求字段和值列表一一对应,且遵循类型和约束的限制
    INSERT INTO stuinfo(stuid,stuname,stugender,email,age,majorid)
    VALUES(1,'熊大','女','sisi@qq.com',12,1); 
    
    #案例2:空字段如何插入
    -- 方案1:字段名和值都不写
    INSERT INTO stuinfo(stuid,stuname,email,majorid)
    VALUES(1,'熊大','sisi@qq.com',2); 
    
    -- 方案2:字段名写上,值使用null
    INSERT INTO stuinfo(stuid,stuname,email,age,majorid)
    VALUES(1,'熊大','sisi@qq.com',NULL,2); 
    
    #案例3:默认字段如何插入
    -- 方案1:字段名写上,值使用default
    INSERT INTO stuinfo(stuid,stuname,email,stugender,majorid)
    VALUES(7,'熊大','sisi@qq.com',DEFAULT,2); 
    
    -- 方案2:字段名和值都不写
    INSERT INTO stuinfo(stuid,stuname,email,majorid)
    VALUES(7,'熊大','sisi@qq.com',2); 
    
    #案例4:可以省略字段列表,默认对所有字段进行插入操作
    INSERT INTO stuinfo VALUES(8,'熊大','女','lin@126.com',12,3);
    
    • 数据的修改
    /*
    语法: 
        update 表名 set 字段名 = 新值,字段名 = 新值,...
        where 筛选条件;
    */
    #案例1:修改年龄<20的专业编号为3号,且邮箱更改为 xx@qq.com
    UPDATE stuinfo SET majorid = 3,email='xx@qq.com'
    WHERE age<20;
    
    • 数据的删除
    /*
    语法:
        方式1:delete语句 -- 删除指定筛选条件的列表项
                delete from 表名 where 筛选条件;
        方式2:truncate语句 -- 一次性清除所有数据
            truncate table 表名;
    两种方式的区别:
        1.delete可以添加where条件,truncate不能添加where条件,且一次性清除所有数据
        2.truncate的效率较高
        3.如果删除带自增长列的表:
            使用delete删除后,新插入的数据,记录从断点处开始
            使用truncate删除后,新插入的数据,记录从1开始
        4.delete删除数据,会返回受影响的行数
          truncate删除数据,不会返回受影响的行数
        5.delete删除数据,可以支持事务回滚
          truncate删除数据,不可以支持事务回滚
    补充:设置自增长列、
        1、自增长列要求必须设置在一个键上,比如主键或唯一键
        2、自增长列要求数据类型为字符型
        3、一个表至多有一个增长列
    */
    #案例1:删除姓李所有信息
    DELETE FROM stuinfo WHERE stuname LIKE '李%';
    
    #案例2:删除表中所有数据
    TRUNCATE TABLE stuinfo ;
    
  • 相关阅读:
    HTML5 向网页嵌入视频和音频
    HTML5中History.back()页面后退刷新页面
    阻止表单的默认提交事件
    SQL Server 2008带字段注释导入Power Designer 9.5
    CodeSmith将模板文件批量生成文件的方法(转)
    Nhibernate学习心得
    邮件发送代码
    Json的一些了解
    有关js的一个问题
    在IIS上启用Gzip压缩(HTTP压缩)
  • 原文地址:https://www.cnblogs.com/csyh/p/12398581.html
Copyright © 2011-2022 走看看