MySQL——DML、DDL语言

DML:数据操纵语言

  关键字:insertupdatedelete

数据的插入

1、单行插入

  语法:

   方法一:

    insert  into  表名  (字段1,字段2,...)

    values(1,值2,...);

   方法二:

    insert   into   表名  set   字段一='值1',字段二='值二';

  注意事项:

    1、字段和值列表必须一一对应

    2、字符型和日期型必须用单引号引起来

    3、字段的顺序可以和表中字段的顺序不一致

    4、不可以为NULL的字段,必须插入值,比如说主键id可以为NULL的字段,可以不用插入值,使用NULL来代替,或字段名和值都不写

    5、字段和值的个数必须一致

    6、字段列表可以省略,默认所有列 ,而且顺序和表中的列的顺序一致   

2、多行插入

   语法:

    方法一:

      insert  into  表名  (字段一,字段二)

      values('x1','x2'),

      ('y1','y2'),

      ......

      ('z1','z2');

    方法二:

      insert  into  表名   (字段一,字段二)

      select  ‘x1’,'x2'  union

      select  'y1','y2'  union

      ......

      select  'z1','z2';

数据更新

1、单表更新  

  语法

    update  表名  set  字段名=新值,字段名=新值

    [WHERE 条件];

2.多表更新

  语法:

    update  1 别名1,2 别名2

    set  字段1=新值,字段2=新值

    where  连接条件

    and  筛选条件;

 

数据删除

1、单表删除

  语法:

    方法一:

      delete  from  表  [where  条件]

    方法二:

      truncate  table  表名

    注意事项:

        1TRUNCATE不能加WHERE条件,而DELETE可以加WHERE

        2TRUNCATE效率较高

        3TRUNCATE不能删除多表,而DELETE可以

        4、删除带标识列字段的表时,TRUNCATE 删除后再插入,标识列的值从1开始;DELETE删除后再插入,标识列的值从断点处开始

        5TRUNCATE删除后,不能回滚;DELETE删除可以回滚

 

2、多表删除

   语法:

    delete  别名1,别名2   FROM   表1 别名1,表2 别名2

    where  连接条件

    and  筛选条件

DDL:数据定义语言

  关键字:createalterdrop

一、库的操作

  1、创建库

    create  database  库名;

    create  database  if  not  exists  库名;

  2、删除库

    drop  database  库名;

    drop  database    if  not  exists库名;

二、表的操作

  1、创建表

    create  table   表名(

    字段名 字段类型(长度),

    字段名 字段类型(长度),

    字段名 字段类型(长度),

    字段名 字段类型(长度)

    ......

    );

  2、修改表

    ①修改表名

      alter  table  修改前的表名  rename  修改后的表名;

    ②修改列名(不加类型报错,需要加类型)

      alter  table  表名  change  column  修改前的列名  修改后的列名  数据类型;

    ③修改列的类型

      alter  table  表名  modify  column  列名  数据类型;

    ④添加新列

      alter  table  表名  add  column  列名  数据类型;

     ⑤删除列

      alter  table  表名  drop  column  列名;

  3、删除表

    drop  table  表名;

    drop  table  if  exists  表名;

  4、表的复制

    ①仅仅复制表的结构

      create  table  新表  like  被复制的表;

    ②复制表的结构+数据

      create  table  新表  select  被复制的表;

 

 

 

 

 

猜你喜欢

转载自www.cnblogs.com/ShiQi521/p/13368774.html