标签:sql
CREATE INDEX index_name ON table_name (column_name)注释:"column_name" 规定需要索引的列。
CREATE UNIQUE INDEX index_name ON table_name (column_name)
CREATE INDEX PersonIndex ON Person (LastName)如果您希望以降序索引某个列中的值,您可以在列名称之后添加保留字 DESC:
CREATE INDEX PersonIndex ON Person (LastName DESC)假如您希望索引不止一个列,您可以在括号中列出这些列的名称,用逗号隔开:
CREATE INDEX PersonIndex ON Person (LastName, FirstName)
DROP INDEX index_name ON table_name用于 MS SQL Server 的语法:
DROP INDEX table_name.index_name用于 IBM DB2 和 Oracle 语法:
DROP INDEX index_name用于 MySQL 的语法:
ALTER TABLE table_name DROP INDEX index_name
DROP TABLE 表名称
DROP DATABASE 数据库名称
TRUNCATE 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原始的表 (用在例子中的):
Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
3 | Carter | Thomas | Changan Street | Beijing |
ALTER TABLE Persons ADD Birthday date请注意,新列 "Birthday" 的类型是 date,可以存放日期。数据类型规定列中可以存放的数据的类型。
Id | LastName | FirstName | Address | City | Birthday |
---|---|---|---|---|---|
1 | Adams | John | Oxford Street | London | |
2 | Bush | George | Fifth Avenue | New York | |
3 | Carter | Thomas | Changan Street | Beijing |
ALTER TABLE Persons ALTER COLUMN Birthday year请注意,"Birthday" 列的数据类型是 year,可以存放 2 位或 4 位格式的年份。
ALTER TABLE Person DROP COLUMN BirthdayPersons 表会成为这样:
Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
3 | Carter | Thomas | Changan Street | Beijing |
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) )MySQL 使用 AUTO_INCREMENT 关键字来执行 auto-increment 任务。
ALTER TABLE Persons AUTO_INCREMENT=100要在 "Persons" 表中插入新纪录,我们不必为 "P_Id" 列规定值(会自动添加一个唯一的值):
INSERT INTO Persons (FirstName,LastName) VALUES ('Bill','Gates')上面的 SQL 语句会在 "Persons" 表中插入一条新纪录。"P_Id" 会被赋予一个唯一的值。"FirstName" 会被设置为 "Bill","LastName" 列会被设置为 "Gates"。
CREATE TABLE Persons ( P_Id int PRIMARY KEY IDENTITY, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )MS SQL 使用 IDENTITY 关键字来执行 auto-increment 任务。
INSERT INTO Persons (FirstName,LastName) VALUES ('Bill','Gates')上面的 SQL 语句会在 "Persons" 表中插入一条新纪录。"P_Id" 会被赋予一个唯一的值。"FirstName" 会被设置为 "Bill","LastName" 列会被设置为 "Gates"。
CREATE TABLE Persons ( P_Id int PRIMARY KEY AUTOINCREMENT, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )MS Access 使用 AUTOINCREMENT 关键字来执行 auto-increment 任务。
INSERT INTO Persons (FirstName,LastName) VALUES ('Bill','Gates')上面的 SQL 语句会在 "Persons" 表中插入一条新纪录。"P_Id" 会被赋予一个唯一的值。"FirstName" 会被设置为 "Bill","LastName" 列会被设置为 "Gates"。
CREATE SEQUENCE seq_person MINVALUE 1 START WITH 1 INCREMENT BY 1 CACHE 10上面的代码创建名为 seq_person 的序列对象,它以 1 起始且以 1 递增。该对象缓存 10 个值以提高性能。CACHE 选项规定了为了提高访问速度要存储多少个序列值。
INSERT INTO Persons (P_Id,FirstName,LastName) VALUES (seq_person.nextval,'Lars','Monsen')上面的 SQL 语句会在 "Persons" 表中插入一条新纪录。"P_Id" 的赋值是来自 seq_person 序列的下一个数字。"FirstName" 会被设置为 "Bill","LastName" 列会被设置为 "Gates"。
标签:sql
原文地址:http://blog.csdn.net/crazygolf/article/details/39087837