天天看点

数据库之DDL操作数据库DDL操作数据库DDL操作数据表

DDL操作数据库

创建数据库

  • 点击Navicat里的新建查询。
  • sql语句中注释为:
    • 单行注释:# 注释
    • ​ – 注释
    • 多行注释:
  • 命令:
    • create database 数据库名; #创建指定名称的数据库
    • create database 数据库名 character set 字符集; # 创建指定名称的数据库,并指定字符集(一般为utf8)
    • use 数据库名; # 切换数据库
    • select database(); #查询当前所使用的的数据库*
    • show databases; # 查询mysql中有哪些数据库
    • show create database db1; # 查看数据库定义信息

修改数据库

  • 修改数据库字符集
    • 命令:
      • alter database 数据库名 character set 字符集; #修改指定数据库的字符集

删除数据库

  • 命令 :
    • drop database 数据库名; # 从mysql中永久的删除某个数据库

DDL操作数据表

  • 一个数据库中有n个表,表中又有字段(列),在建表的是就需要定义好字段(指定字段属性------>字段属性类型+字段长度等)

创建表

  • 语法格式:
  • create table 表名(
    字段名称1 字段类型(长度)
    字段名称2 字段类型  注:最后一列不要加逗号
    );
               
  • /*需求:
    表名:category
    表中字段:
    	分类id:cid,整型
    	分类名称:cname,为字符型类型,指定长度为20
    */
    
    create table category(
    	-- 定义字段信息
    	cid int,
        cname varchar(20)
    );
               
    /*
    需求:创建测试表
    表名:test1
    表中字段:
    	测试id:tid,整型
    	测试时间:tdate,为年月日的日期类型
    */
    create table test1(
    	tid int,
    	tdate DATE
    );
               
    /*
    需求:快速创建一个表结构相同的表(复制表结构,不复制数据)
    语法格式:
    Create table 新标名 like 旧表名;
    */
    create table test2 like test1;
    -- 查看表结构
    desc test2;
               

查询表

  • 查看当前数据库中有哪些数据表
  • show tables;
               
  • 查看当前数据表的结构
  • desc test2;
               
  • 查看创建表的sql语句
  • show create table test2;
               

删除表

-- 删除数据库/表用drop
drop table test1;
-- 判断存在表再删除
drop table if exists test1;
           

修改表

  1. 修改表名
    1. rename table 旧表名 to 新表名
                 
      rename table category to category1 #将表category改为category1
                 
  2. 向表中添加列,关键字ADD
    • 语法格式:
      alter table 表名 add 字段名称 字段类型
                 
    • alter table category add cdesc varchar(20); #为表添加一个新的字段为 分类描述 cdesc varchar(20)
                 
  3. 修改表中列的数据类型或长度,关键字MODYFI
    • 语法格式:
    • alter table 表名 modify 字段名称 字段类型
                 
    • alter table category1 MODIFY cdesc varchar(50); #对分类表的描述字段进行修改,类型varchar(50)
                 
  4. 修改列名称,关键字CHANGE
    • 语法格式:
    • alter table 表名 change 旧列名 新列名 类型(长度)
                 
      alter table category change adesc description varchar(30);
      #对分类表中adesc字段进行更换,更换为description varchar(30)
                 
  5. 删除列,关键字DROP
    • 语法格式:
    • alter table 表名 drop 列名;
                 
    • alter table category1 drop description;# 删除分类表中description这列