查看所有的表
SHOWTABLES;
创建一个表
CREATETABLEn(
id INT,
name VARCHAR(10));CREATETABLEm(
id INT,
name VARCHAR(10),PRIMARYKEY(id),FOREIGNKEY(id)REFERENCESn(id),UNIQUE(name));
直接将查询结果导入或复制到新创建的表
CREATETABLE n SELECT*FROM m;
新创建的表与一个存在的表的数据结构类似
CREATETABLE m LIKE n;
创建一个临时表,临时表将在你连接MySQL期间存在。当断开连接时,MySQL将自动删除表并释放所用的空间。也可手动删除。
CREATETEMPORARYTABLEl(
id INT,
name VARCHAR(10));
直接将查询结果导入或复制到新创建的临时表
CREATETEMPORARYTABLE tt SELECT*FROM n;
删除一个存在表
DROPTABLEIFEXISTS m;
更改存在表的名称
ALTERTABLE n RENAME m;RENAMETABLE n TO m;查看表的结构(以下五条语句效果相同)
DESC n;//因为简单,所以建议使用此条语句 DESCRIBE n;SHOWCOLUMNSIN n;SHOWCOLUMNSFROM n;EXPLAIN n;
查看表的创建语句
SHOWCREATETABLE n;
表的结构:
表结构就是定义一个表的字段、类型、主键、外键、索引,这些基本的属性组成了数据库的表结构
添加字段
ALTERTABLE n ADD age VARCHAR(2);
删除字段
ALTERTABLE n DROP age;
更改字段属性和属性
ALTERTABLE n CHANGE age a INT;
只更改字段属性
ALTERTABLE n MODIFY age VARCHAR(7);
表的数据:
增加数据
INSERTINTO n VALUES(1,'tom','23'),(2,'john','22');INSERTINTO n SELECT*FROM n;//把数据复制一遍重新插入
删除数据
DELETEFROM n WHERE id =2;
更改数据
UPDATE n SET name ='tom'WHERE id =2;
数据查找
SELECT*FROM n WHERE name LIKE'%h%';数据排序(反序)SELECT*FROM n ORDERBY name, id DESC;
键:
添加主键
ALTERTABLE n ADDPRIMARYKEY(id);ALTERTABLE n ADDCONSTRAINT pk_n PRIMARYKEY(id);//主键只有一个,所以定义键名似乎也没有什么用
删除主键
ALTERTABLE n DROPPRIMARYKEY;
添加外键
ALTERTABLE m ADDFOREIGNKEY(id)REFERENCESn(id);//自动生成键名m_ibfk_1ALTERTABLE m ADDCONSTRAINT fk_id FOREIGNKEY(id)REFERENCESn(id);//使用定义的键名fk_id
删除外键
ALTERTABLE m DROPFOREIGNKEY`fk_id`;
修改外键
ALTERTABLE m DROPFOREIGNKEY`fk_id`,ADDCONSTRAINT fk_id2 FOREIGNKEY(id)REFERENCESn(id);//删除之后从新建
添加唯一键
ALTERTABLE n ADDUNIQUE(name);ALTERTABLE n ADDUNIQUEu_name(name);ALTERTABLE n ADDUNIQUEINDEXu_name(name);ALTERTABLE n ADDCONSTRAINT u_name UNIQUE(name);CREATEUNIQUEINDEX u_name ONn(name);
添加索引
ALTERTABLE n ADDINDEX(age);ALTERTABLE n ADDINDEXi_age(age);CREATEINDEX i_age ONn(age);
删除索引或唯一键
DROPINDEX u_name ON n;DROPINDEX i_age ON n;
视图:
创建视图
CREATEVIEW v ASSELECT id, name FROM n;CREATEVIEWv(id, name)ASSELECT id, name FROM n;查看视图(与表操作类似
数据库:查看所有的数据库 SHOW DATABASES ;创建一个数据库 CREATE DATABASE k;删除一个数据库 DROP DATABASE k;使用这个数据库 USE k;表:查看所有的表 SHOW TABLES ;创建一个表 CREATE TABLE n( id INT, name VARCHAR(10) ); CRE...