SQL CREATE 关键字
创建数据库
CREATE DATABASE 命令用于创建新的 SQL 数据库。
下面的 SQL 创建了一个名为 "testDB" 的数据库:
实例
CREATE DATABASE testDB;
SHOW DATABASE;创建表
CREATE TABLE 命令在数据库中创建一个新表。
下面的 SQL 创建了一个名为 "Persons" 的表包含五个列:PersonID、LastName、FirstName、Address 和 City:
实例
CREATE TABLE Persons(PersonID int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255));
用另外一个表创建表
下面的 SQL 创建了一个名为 "TestTables"(这是 "Customers" 表的两列的副本):;
实例
CREATE TABLE TestTable ASSELECT customername, contactnameFROM customers;
创建索引
CREATE INDEX 命令用于在表中创建索引(允许重复值)
索引用于非常快速地从数据库检索数据。用户看不到索引,它们只是用来 加速搜索/查询。
下面的 SQL 在 "Persons" 表的 "LastName" 列上创建一个名为 "idx_lastname" 的索引:
CREATE INDEX idx_lastnameON Persons (LastName);
如果要在列组合上创建索引,可以在括号内列出列名,用逗号分隔:
CREATE INDEX idx_pnameON Persons (LastName, FirstName);
创建唯一索引
CREATE UNIQUE INDEX 命令在表上创建唯一索引(不允许重复值)
下面的 SQL 在 "Persons" 表的 "PersonID" 列上创建一个名为 "uidx_pid" 的索引:
CREATE UNIQUE INDEX uidx_pidON Persons (PersonID);
创建视图
CREATE VIEW 命令创建一个视图。
视图是基于 SQL 语句结果集的虚拟表。
以下 SQL 创建了一个视图,用于选择来自巴西的所有客户:
实例
CREATE VIEW [Brazil Customers] ASSELECT CustomerName, ContactNameFROM CustomersWHERE Country = "Brazil";
修改视图
CREATE OR REPLACE VIEW 命令更新视图。
下面的 SQL 在 "Brazil Customers" 视图中添加了 "City" 列:
实例
CREATE OR REPLACE VIEW [Brazil Customers] ASSELECT CustomerName, ContactName, CityFROM CustomersWHERE Country = "Brazil";
查询视图
我们可以按如下方式查询上述视图:
实例
SELECT * FROM [Brazil Customers];
创建存储过程
CREATE PROCEDURE 命令用于创建存储过程。
存储过程是一个可以保存的准备好的 SQL 代码,因此代码可以反复使用。
以下 SQL 创建了一个名为 "SelectAllCustomers" 的存储过程,用于从“Customers”表中选择所有记录:
实例
CREATE PROCEDURE SelectAllCustomersASSELECT * FROM CustomersGO;
执行以上存储过程的结果:
实例
EXEC SelectAllCustomers;