SQL Server CREATE, ALTER, DROP 表格 [T-SQL 示例]

什么是表格?

表格是存储数据的对象,它以行和列的格式存储。下图分别显示了行和列。

Table Rows and Column
表格的行和列

如何在 SQL Server 中使用 T-SQL 创建表格

将数据存储到数据库中的第一步是创建一个表格,数据将驻留在其中。创建表格后,我们可以继续向表格中插入行。

我们可以通过以下方式创建表格

  1. T-SQL:通过定义所有列及其数据类型来创建新表格。
  2. T-SQL:使用现有表格创建新表格
  3. 使用表格设计器

让我们详细研究一下

T-SQL:通过定义所有列及其数据类型来创建新表格。

以下是在SQL Server中创建表格的语法

语法

CREATE TABLE tableName
( 
  column_1 datatype [ NULL | NOT NULL ],
  column_2 datatype [ NULL | NOT NULL ],
  ...
);

此处,

  • 参数 tableName 表示您要创建的表格的名称。
  • 参数 column_1, column_2… 表示要添加到表格的列。
  • 列应指定为 NULL 或 NOT NULL。如果您不指定,SQL Server 将默认为 NULL。

让我们创建一个包含两列的基本表格

查询

CREATE TABLE COURSE
(
Course_ID Int,
Course_Name Varchar(10)
)

先决条件:选择您需要创建表格的数据库。

Create a Table in SQL Server with T-SQL

步骤 1) 单击“执行”运行查询。
运行查询之前,不存在任何表格

Create a Table in SQL Server with T-SQL

结果:运行查询后,单击“刷新”按钮,新的表格将作为“Course”存在。

Create a Table in SQL Server with T-SQL

Create a Table in SQL Server with T-SQL

步骤 2) 插入一些数据

到目前为止,表格只存在,但表格中还没有插入任何数据。

Transact-SQL 具有 INSERT 语句,可用于将数据插入表格。使用此语句,我们可以将一列或多列插入表格。

语法

INSERT INTO tableName
(column_1, column_2, ... )
VALUES
(expression_1, expression_2, ... ),
(expression_1, expression_2, ... ),
...;

以上显示了在使用 VALUES 关键字将数据插入表格时命令的基本语法。

让我们使用Insert命令插入四行。

Insert into COURSE values (1,'SQL');
Insert into COURSE values (2,'Python');
Insert into COURSE values (3,'SQL');
Insert into COURSE values (4,'C');

下面的快照显示,现在成功插入了四行。

Create a Table in SQL Server with T-SQL

步骤 3) 使用 SELECT 语句查看数据
要查看 SQL Server 中的数据,请复制以下语法

SELECT expression
FROM tableName
[WHERE condition];

示例查询

SELECT * FROM COURSE;

结果:表格已创建,并且表格中有四条记录。请注意,我们可以在任何列中创建具有重复值的记录,因为没有任何约束。

Create a Table in SQL Server with T-SQL

T-SQL:使用现有表格创建新表格。

现在假设我们需要另一个像上面创建的 COURSE 表格。但是,我们只需要一列Course_Name,而不需要Course_ID

语法

SELECT (Column 1, …) INTO <New Table name> FROM <Old Table name>;

示例查询

SELECT COURSE_NAME INTO COURSE_NAMES FROM COURSE;

步骤 1) 单击“执行”运行查询。

Create a New Table using an Existing Table

结果:使用旧表格的 1 列和四条记录创建了名为COURSE_NAMES的新表格。

SELECT * FROM COURSE_NAMES;

Create a New Table using an Existing Table

使用表格设计器

我们还可以使用Table Designer从 Studio Management IDE 创建表格。

步骤 1) 右键单击“表格”>“新建”>单击“表格”

Create a Table in SQL Server Using Table Designer

步骤 2) 输入列名、数据类型。选择是否允许 NULL。

Create a Table in SQL Server Using Table Designer

步骤 3) 按“CTRL+S”保存表格。输入名称为“Course_Title”

Create a Table in SQL Server Using Table Designer

结果:单击“刷新”,我们可以看到名为Course_Title的新表格,其中有一列名为Course_Name

Create a Table in SQL Server Using Table Designer

Create a Table in SQL Server Using Table Designer

SQL Server 中的 Alter Table (修改表格)

在 SQL Server 中修改表格两种方法

1. T-SQL:通过添加新列修改表格。

2. 使用表格设计器

T-SQL:通过插入列修改表格

以下是 SQL 中 Alter 命令的语法

语法:

 Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;

查询:

ALTER TABLE dbo.Course_Title ADD Course_Duration VARCHAR(20);

步骤 1) 单击“执行”运行查询。

Alter Table by Inserting Columns

结果:Course_Title 表格中,存在名为Course_Duration的新列。

Alter Table by Inserting Columns

使用表格设计器

我们也可以使用表格设计器从 UI 修改表格。

步骤 1) 右键单击现有表格>设计。

Alter Table Using Table Designer

步骤 2) 添加列名 Course_Start_Date 并选择数据类型。

Alter Table Using Table Designer

步骤 3) 按“CTRL+S”保存新添加的列。

结果:Course_Title表格中,创建了名为Course_Start_Date的新列。

Alter Table Using Table Designer

SQL Server 中的 Delete Table (删除表格)

当表格不再需要时,我们将其删除。

在 SQL Server 中删除表格两种方法

1. 使用SQL Server Management Studio

2. T-SQL:删除表格。

使用 SQL Server Management Studio

步骤 1) 右键单击现有表格>删除。表格名称“Course_Title”

Delete Table Using SQL Server Management Studio

步骤 2) 在“删除对象”窗口中,单击“确定”

Delete Table Using SQL Server Management Studio

结果:“Course_Title”表格已从表格列表中删除。

Delete Table Using SQL Server Management Studio

T-SQL:删除表格

以下是删除表格的语法

语法

DROP TABLE <tableName>;

参数 tableName 是要删除的表格的名称。

查询

DROP TABLE COURSE_NAMES;

步骤 1) 单击执行运行查询。

Delete Table

结果:“Course_Name”表格已从表格列表中删除。

Delete Table

或者,您也可以使用 DELETE TABLE 命令。但是,它只会删除行(数据)。表格结构将保持不变。该命令旨在截断表格,以便以后可以使用。

语法

DELETE TABLE <Table name>;

有趣的事实!

  • 我们也可以将 .xml 等大文件作为 BLOB、CLOB 数据类型存储在列中。
  • Delete 可以回滚,但 Drop 不能回滚。

摘要

  • Delete table 只删除所有行,但表格结构仍然存在。我们可以再次插入新行。
  • Drop 将永久删除表格结构,因此我们无法插入新行。