从零开始到 ~ 数据库MySQL(进阶) DML和DDL

目录

DDL:

数据库操作:

一、创建语句

二、查询语句   

三、修改语句  

四、删除语句  

五、查询语句   

数据表操作:

一、创建语句

二、查询语句

三、修改语句

DML:

1. 添加数据:

2. 删除数据:

3. 修改数据:


DDL:

DDL(数据定义语言),主要是进行定义和改变表的结构、数据类型、表之间的链接等操作。常用的语句关键字有 CREATE(创建)、DROP(删除)、ALTER (修改)。

数据库操作:

一、创建语句

1、创建数据库:
    * create database 数据库名称;


2、创建数据库,判断不存在,再创建:
    * create database if not exists 数据库名称;


3、创建数据库,并指定字符集
    * create database 数据库名称 character set 字符集名;


二、查询语句   


4、查询所有数据库的名称:
    * show databases;


5、查询某个数据库的字符集:查询某个数据库的创建语句
    * show create database 数据库名称;


三、修改语句  


6、修改数据库的字符集
    * alter database 数据库名称 character set 字符集名称;


四、删除语句  


7、删除数据库
    * drop database 数据库名称;


8、判断数据库存在,存在再删除
    * drop database if exists 数据库名称;


五、查询语句   


9、 查询当前正在使用的数据库名称
    * select database();


10、使用数据库
    * use 数据库名称;

数据表操作:

一、创建语句

1、表的创建
 

   * create table 表名(
                列名1 数据类型1 【字段约束】,
                列名2 数据类型2 【字段约束】,
                ....
                列名n 数据类型n 【字段约束】
            );


注意:最后一列,不需要加逗号(,)


二、查询语句


1、 查询当前数据库中所有的表
     show tables;
2、 查询某个数据库中所有的表
    show tables from 数据库名称;
3、查询表结构
     desc 表名;


三、修改语句


1、 修改表名
     alter table 表名 rename to 新的表名;
2、 修改表的字符集
     alter table 表名 character set 字符集名称;
3、添加一列
     alter table 表名 add 列名 数据类型;
4、 修改列名称 类型
     alter table 表名 change 列名 新列别 新数据类型;
     alter table 表名 modify 列名 新数据类型;

5、 删除列
      alter table 表名 drop 列名;

* 删除表
    * drop table 表名;
    * drop table  if exists 表名;

DML:

DML(数据操作语言),主要是对数据进行增加、删除、修改操作。常用的语句关键字有 INSERT(插入)、UPDATE(修改)、DELETE(删除) 等。

1. 添加数据:


    * 语法:
        * insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);


     注意:
        1. 列名和值要一一对应。
        2. 如果表名后,不定义列名,则默认给所有列添加值
            insert into 表名 values(值1,值2,...值n);
        3. 除了数字类型,其他类型需要使用引号(单双都可以)引起来



2. 删除数据:


    * 语法:
        * delete from 表名 [where 条件]
    注意:
        1. 如果不加条件,则删除表中所有记录。
        2. 如果要删除所有记录
            1. delete from 表名; -- 不推荐使用。有多少条记录就会执行多少次删除操作
            2. TRUNCATE TABLE 表名; -- 推荐使用,效率更高 先删除表,然后再创建一张一样的表。

 

面试题:delete与TRUNCATE区别?
        1.truncate不能加where条件,而delete可以加where条件
        2.truncate的效率高
        3.truncate 删除带自增长的列的表后,如果再插入数据,数据从1开始
        4.delete 删除带自增长列的表后,如果再插入数据,数据从上一次的断点处开始
        5.truncate删除不能回滚,delete删除可以回滚



3. 修改数据:


    * 语法:
        * 修改单表: update 表名 set 列名1 = 值1, 列名2 = 值2,... [where 条件];
        * 修改多表: update 表1 别名1,表2 别名2 set 字段=新值,字段=新值 where 连接条件 and 筛选条件

    注意:
       如果不加任何条件,则会将表中所有记录全部修改

 

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值