轻松上手,快乐学习!

SQL CREATE 关键字


CREATE DATABASE

CREATE DATABASE命令用于创建新的SQL数据库。

以下SQL创建一个名为“testDB”的数据库:

实例

CREATE DATABASE testDB;

提示:在创建任何数据库之前,请确保您具有管理员权限。创建数据库后,可以使用以下SQL命令在数据库列表中对其进行检查:SHOW DATABASES;


创建表

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 AS
SELECT customername, contactname
FROM customers;

运行实例»


创建指数

CREATE INDEX命令用于在表中创建索引(允许重复值)。

索引用于非常快速地从数据库中检索数据。用户无法看到索引,它们只是用于加速搜索/查询。

以下SQL在“Persons”表的“LastName”列中创建名为“idx_lastname”的索引:

CREATE INDEX idx_lastname
ON Persons (LastName);

如果要在列组合上创建索引,可以在括号中列出列名,用逗号分隔:

CREATE INDEX idx_pname
ON Persons (LastName, FirstName);

注意:创建索引的语法因不同的数据库而异。因此:检查在数据库中创建索引的语法。

注意:使用索引更新表比没有更新表需要更多时间(因为索引也需要更新)。因此,只在经常搜索的列上创建索引。


创建独特的索引

CREATE UNIQUE INDEX命令在表上创建唯一索引(不允许重复值)

以下SQL在“Persons”表的“PersonID”列中创建名为“uidx_pid”的索引:

CREATE UNIQUE INDEX uidx_pid
ON Persons (PersonID);

创建视图

CREATE VIEW命令创建一个视图。

视图是基于SQL语句的结果集的虚拟表。

以下SQL创建一个视图,从巴西选择所有客户:

实例

CREATE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName
FROM Customers
WHERE Country = "Brazil";

运行实例»


创建或替换视图

CREATE OR REPLACE VIEW命令更新视图。

以下SQL将“City”列添加到“Brazil Customers”视图:

实例

CREATE OR REPLACE VIEW [Brazil Customers] AS
SELECT CustomerName, ContactName, City
FROM Customers
WHERE Country = "Brazil";

运行实例»


查询视图

我们可以查询上面的视图如下:

实例

SELECT * FROM [Brazil Customers];

运行实例»


创建程序

CREATE PROCEDURE命令用于创建存储过程。

存储过程是您可以保存的准备好的SQL代码,因此代码可以反复重用。

以下SQL创建一个名为“SelectAllCustomers”的存储过程,过程选择“Customers”表中的所有记录:

实例

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;

执行上面的存储过程如下:

实例

EXEC SelectAllCustomers;