MySQL操作数据库和表的基本语句(DDL)

1、创建数据库:

CREATE DATABASE 数据库名; 
eg.CREATE DATABASE test_ddl;

2、创建表

CREATE TABLE 表名(
列名 数据类型 约束,
...
);

 eg. CREATE TABLE table_ddl(
 id INT(10)   PRIMARY KEY   AUTO_INCREMENT,
 test_content  VARCHAR(20)  NOT NULL
);

3、复制表
(1)复制表结构(不含数据)

CREATE TABLE 新表名 (SELECT * FROM 旧表名 WHERE 1=2);

eg.CREATE TABLE copy_table_ddl(
SELECT * 
FROM table_ddl 
WHERE 1=2);

(2)复制表数据以及结构

CREATE TABLE 新表名 (SELECT * FROM 旧表名);

eg.CREATE TABLE copy_table_ddl2(
SELECT * 
FROM table_ddl 
);

4.修改表(ALTER)

(1)修改表名:(RENAME)

ALTER TABLE 旧表名 RENAME 新表名;

eg.ALTER TABLE table_ddl RENAME table_ddl_rename; 

(2)修改列名(CHANGE)

ALTER TABLE 表名 CHANGE  旧列名 新列名 原数据类型 原约束;

eg.ALTER TABLE table_ddl_rename 
CHANGE test_content content VARCHAR(20) NOT NULL; 

(3)修改数据类型和约束(MODIFY)

ALTER TABLE 表名 MODIFY 列名 新数据类型 新约束;

eg.ALTER TABLE table_ddl_rename MODIFY content VARCHAR(100) NULL;

(4)删除列(DROP)

ALTER TABLE 表名 DROP 列名;

eg.ALTER TABLE table_ddl_rename DROP COLUMN new_columm;

(5)添加列(ADD)

ALTER TABLE 表名 ADD COLUMN 列名 数据类型 约束;

eg.ALTER TABLE table_ddl_rename ADD COLUMN new_columm INT(20) UNIQUE; 

(6)删除主键、唯一键约束(先删除索引,再删除约束)
#因为主键只有一个,所以可以直接删除,不用索引:

删除主键:
ALTER TABLE  表名 DROP PRIMARY KEY;
		
eg.ALTER TABLE copy_table_ddl DROP PRIMARY KEY;

删除唯一键约束索引:
ALTER TABLE 表名 DROP INDEX 索引名;

eg.ALTER TABLE table_ddl_rename DROP INDEX new_columm;	

5.其他语句:

DESC 表名;	#查询表结构
SHOW INDEX FROM 表名;	#查询表索引

6.约束条件:

(1)主键:PRIMARY KEY
(2)唯一键:UNIQUE
(3)非空:NOT NULL
(4)自增:AUTO_INCREMENT
(5)默认值:DEFAULT
(6)外键:FOREGIN KEY 

。。。

你可能感兴趣的:(MYSQL)