MySQL进阶11--DDL数据库定义语言--库创建/修改/删除--表的创建/修改/删除/复制

/*进阶 11
DDL 数据库定义语言
    库和表的管理
     一:库的管理:创建/修改/删除
     二:表的管理:创建/修改/删除
    创建: CREATE DATABASE [IF NOT EXISTS] 库名;
    修改: alter
    删除: DROP DATABASE [IF EXISTS] 库名;
*/
#一 : 库的管理
    #1 库的创建
CREATE DATABASE books;

CREATE DATABASE IF NOT EXISTS books;
 
   #2/库的修改
    #库名的修改,需要停止服务器,然后修改本地文件,重启服务器;
   #3 更新库的字符集为
ALTER DATABASE books
CHARACTER SET gbk;
   #4 库的删除
DROP DATABASE IF EXISTS books;

#二: 表的管理
/*  #1:表的创建

    create table [if not exists] 表名(
    列名 列的类型[长度 , 约束]
        列名 列的类型[长度 , 约束]
        列名 列的类型[长度 , 约束]
        列名 列的类型[长度 , 约束]
    )
    
    #2:表的修改 (下面有具体的栗子)
    alter table 表名 add/drop/modify/change column 列名 [列类型 约束];
    
    #3: 表的删除
    drop table [if exists] 表名;  

  #4: 删除表的全部数据
  delete from 表名 where --; #通用的开发经验: drop datebase if exists 旧的库名; create datebase 新库名; drop table if exists 旧表名; create table 表名(); #4: 表的复制 #1):仅仅复制表的结构(全部的字段) CREATE TABLE copy LIKE author; #2):复制表的结构和数据 CREATE TABLE copy2 SELECT * FROM author; #3):只复制部分数据 CREATE TABLE copy3 SELECT id,author_name FROM author WHERE nation='中国'; #4):仅仅复制某些字段(where 一个恒假的字段): CREATE TABLE copy4 SELECT id,author_name FROM author WHERE 0; #永远为假
*/ #创建book表 CREATE DATABASE IF NOT EXISTS books; CREATE TABLE book( id INT, #编号 bName VARCHAR(20) , #一个汉字或者字母都是一个字符,规定字符个数的长度 price DOUBLE , author INT, #作者 publishDate DATETIME #出版日期 ); #创建表author CREATE TABLE IF NOT EXISTS author( id INT, author_name VARCHAR(20), nation VARCHAR(10) ); DESC author; #2 表的修改: #修改列名: (必须要加上列名,顺带可以修改列的属性) ALTER TABLE book CHANGE COLUMN publishdate pubdate DATETIME; #修改列的类型或者约束 : ALTER TABLE book MODIFY COLUMN pubdate TIMESTAMP; #更新成时间戳类型 #添加新列: ALTER TABLE author ADD COLUMN annual DOUBLE ; #删除列: ALTER TABLE author DROP COLUMN annual; #修改表名: ALTER TABLE author RENAME TO book_author; #3:表的删除 DROP TABLE IF EXISTS book_author; SHOW TABLES; #4: 表的复制 INSERT INTO AUTHOR VALUES(1,'莫言','中国'),(2,'村上春树','中国'); #1):仅仅复制表的结构(全部的字段) CREATE TABLE copy LIKE author; #2):复制表的结构和数据 CREATE TABLE copy2 SELECT * FROM author; #3):只复制部分数据 CREATE TABLE copy3 SELECT id,author_name FROM author WHERE nation='中国'; #4):仅仅复制某些字段(1=2): CREATE TABLE copy4 SELECT id,author_name FROM author WHERE 0; #永远为假

 

posted @ 2018-10-27 16:46  山枫叶纷飞  阅读(290)  评论(0编辑  收藏  举报