zoukankan      html  css  js  c++  java
  • MySQL(入门)第三篇:DML语言(插入语句、修改语句、删除语句)

    插入语句

    语法一:
      INSERT INTO 表名(列名,...)

      VALUES(值1,...)

    #1.插入类型要与列的类型一致或兼容
    INSERT INTO `beauty`(id,`name`,`sex`,`borndate`,`phone`,`photo`,`boyfriend_id`)
    VALUES(13,'刘诗诗','女','1987-3-10','1888888888',NULL,NULL);
    
    #2.不可以为null的列必须插入值,可以为null的列是怎么插入值的
    #方式一:
    INSERT INTO `beauty`(id,`name`,`sex`,`borndate`,`phone`,`photo`,`boyfriend_id`)
    VALUES(13,'刘诗诗','女','1987-3-10','1888888888',NULL,NULL);
    #方式二:
    INSERT INTO beauty(`id`,`name`,`phone`)
    VALUES(14,'金星','123333333');
    
    #3.列的顺序是否可以颠倒:可以
    INSERT INTO beauty(`name`,`id`,`phone`)
    VALUES('娜扎',15,'298555555');
    
    
    #4.列数和值个数必须一致
    
    #5.可以省略列名,默认是所有列,而且列的顺序和表中列顺序一致
    INSERT INTO beauty
    VALUES(16,'关晓彤','女',NULL,'112',NULL,17);
    

      

    语法二:
      INSERT INTO 表名
      SET 列名=值,列名=值,...

    INSERT INTO beauty
    SET id=17,`name`='刘涛',`phone`='999';
    

      

    两周语法对比:

    #1.语法一支持插入多行,语法二不支持
    INSERT INTO beauty
    VALUES(18,'刘诗诗2','女','1987-3-10','1888888888',NULL,NULL)
    ,(19,'刘诗诗3','女','1987-3-10','1888888888',NULL,NULL);
    
    #2.语法一支持子查询,语法二不支持
    INSERT INTO beauty(`id`,`name`,`phone`)
    SELECT 20,'蒋欣','111';
    

      

    修改语句

      修改单表的记录

    语法:
      UPDATE 表名
      SET 列=新值,列=新值,...
      WHERE 筛选条件;

    #改变beauty表中姓周的电话为1234567
    UPDATE beauty 
    SET `phone`='1234567'
    WHERE `name` LIKE '周%';
    

      

      修改多表的记录【补充】

    sql92语法:
      UPDATE 表1 别名,表二 别名
      SET 列=值
      WHERE 连接条件
      AND 筛选条件

    sql99语法:
      UPDATE 表1 别名
      INNER|LEFT|RIGHT JOIN 表2 别名
      ON 连接条件
      SET 列=值
      WHERE 筛选条件

    #修改张无忌女朋友的手机号为114
    UPDATE boys bo
    INNER JOIN beauty b ON bo.`id`=b.`boyfriend_id`
    SET b.`phone`='114'
    WHERE bo.`boyName`='张无忌';
    

      

    删除语句

    方式一:DELETE

    语法:
      DELETE FROM 表名 WHERE 删选条件

    #删除手机号9结尾女神信息
    DELETE FROM beauty WHERE `phone` LIKE '%9';
    

      

    方式二:TRUNCATE
    删除整个表,不允许WHERE筛选条件删除行

    注:
    1.假如要删除的表中有自增长列,如果用DELETE删除后再插入数据,自增长列的值从断点开始,二TRUNCATE删除后再插入数据,自增长列的值从1开始
    2.truncate删除没有返回值,DELETE删除有返回值
    3.truncate删除不能回滚,DELETE删除可以回滚

  • 相关阅读:
    CodeForces 681D Gifts by the List (树上DFS)
    UVa 12342 Tax Calculator (水题,纳税)
    CodeForces 681C Heap Operations (模拟题,优先队列)
    CodeForces 682C Alyona and the Tree (树上DFS)
    CodeForces 682B Alyona and Mex (题意水题)
    CodeForces 682A Alyona and Numbers (水题,数学)
    Virtualizing memory type
    页面跳转
    PHP Misc. 函数
    PHP 5 Math 函数
  • 原文地址:https://www.cnblogs.com/lunotebook/p/12837010.html
Copyright © 2011-2022 走看看