DML: Data Manipulation Language, 数据操纵语言;数据库
DDL: Data Definition Language,数据定义语言;spa
另外,DCL:Data Control Language,数据控制语言,下节详细讲解.对象
DML,用于查询和修改数据,包括:索引
insert :新增记录ip
update:更新原有记录it
delete:删除原有记录io
select:查询innodb
DDL,用于定义数据库的结构,好比建立,修改删除数据库对象,包括:table
create table ... 建立表
astdrop table... 删除表
create index...建立索引
drop index ...删除索引
alter table..更改表结构,增长,删除列,修改列的数据类型,长度等;
1.新增列
ALTER TABLE t_mytable ADD [COLUMN] 列名称 数据类型,默认插入到最后一列;
ALTER TABLE t_mytable ADD COLUMN SEX CHAR(2) AFTER age,在指定列后新增一列;
ALTER TABLE t_mytable ADD COLUMN SEX CHAR(2) FIRST,插入到第一列;
ALTER TABLE t_mytable ADD COLUMN SEX CHAR(2),ADD COLUMN last_name VARCHAR(30),增长多列;
2.删除一列
ALTER TABLE t_mytable DROP sex;
3. 修改一列
ALTER TABLE t_mytable change sex gender int;,能够更更名称和类型
3.修改一列的数据类型
ALTER TABLE t_mytable modify gender varchar(2);
4.从新命名表的名称
RENAME TABLE t_before_name TO t_new_name;
ALTER TABLE t_mytable RENAME t_mynewtable;
5.建立索引
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list)主键自动添加索引,该语句添加一个主键,这意味着索引值必须是惟一的,且不能为NULL。
ALTER TABLE tbl_name ADD UNIQUE index_name ON (column_list):
这条语句建立索引的值必须是惟一的(除了NULL外,NULL可能会出现屡次)。ALTER TABLE tbl_name ADD INDEX index_name ON (column_list):添加普通索引,索引值可出现屡次。
ALTER TABLE tbl_name ADD FULLTEXT index_name ON (column_list):该语句指定了索引为 FULLTEXT ,用于全文索引。注: 旧版的MySQL的全文索引只能用在MyISAM表格的char、varchar和text的字段上。不过新版的MySQL5.6.24上InnoDB引擎也加入了全文索引
6.删除索引
DROP INDEX idx_name[索引名称] ON t_mytable;
ALTER TABLE t_mytable DROP primary key,删除主键索引
7 查询索引
show index from t_mytable;
8.索引的分类
单值索引:即一个索引只包含单个列.一个表能够由多个单列索引
主键索引: 设定为主键后数据库会自动创建索引,innodb为聚簇索引
复合索引:即一个索引包含了多个列