create index
创建索引表,简单来说,就是为一个表A创建一个索引表a
CREATE INDEX index_name
ON table_name (column_name)
注释:“column_name” 规定需要索引的列。
如果是多个列
CREATE INDEX PersonIndex
ON Person (LastName, FirstName)
索引的优势是可以提高查询速度,因为默认的查询,会遍历整个表的数据。而创建索引,可以说是创建了一个 “词典目录”,是以升序排列的。
比如我们以原表table中的名字列作为索引表,那么就会以名字升序排序;而索引中的第一个名字会记录它在原表中table的行。所以再通过索引查询就更快,而不是遍历全表?
drop
用来进行一些删除操作
通过使用 DROP 语句,可以轻松地删除索引、表和数据库。
DROP INDEX 命令删除表格中
参考
前面删除某条数据用的是delete,这里的drop删除的是表,数据库
DROP TABLE 表名称
DROP DATABASE 数据库名称
删除表中所有数据,保留表
TRUNCATE TABLE 表名称
alter
对表的列操作
ALTER TABLE 语句用于在已有的表中添加、修改或删除列。
如需在表中添加列,请使用下列语法:
ALTER TABLE table_name
ADD column_name datatype
要删除表中的列,请使用下列语法:
ALTER TABLE table_name
DROP COLUMN column_name
注释:某些数据库系统不允许这种在数据库表中删除列的方式 (DROP COLUMN column_name)。
要改变表中列的数据类型,请使用下列语法:
ALTER TABLE table_name
ALTER COLUMN column_name datatype
比如:
ALTER TABLE Persons
ALTER COLUMN Birthday year
AUTO INCREMENT
自动插入
Auto-increment 会在新记录插入表中时生成一个唯一的数字。
我们通常希望在每次插入新记录时,自动地创建主键字段的值。
我们可以在表中创建一个 auto-increment 字段。
比如,在mySQL中:
CREATE TABLE Persons
(
P_Id int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
)
默认地,AUTO_INCREMENT 的开始值是 1,每条新记录递增 1。
要让 AUTO_INCREMENT 序列以其他的值起始,请使用下列 SQL 语法:
ALTER TABLE Persons AUTO_INCREMENT=100