T-SQL 创建表

精华
小牛编辑
150浏览
2023-03-14

在 T-SQL 中创建一个表,该表具有表的名称并定义每列的列和数据类型。

CREATE TABLE 语句用于生成表。

语法:

CREATE TABLE 的语法如下:

CREATE TABLE table_name(Name of the table)  
        column1 datatype,   
        column2 datatype,    
        column3 datatype,    
        .............  
columnN datatype,  
         PRIMARY KEY (Primary key is used for one or morecolumns ));

在这种情况下创建一个新表。在该语法之后的 CREATE TABLE 语句之后的表的标识符变得容易理解。

现有表的副本创建 CREATE TABLE 语句的组合并生成 SELECT 语句。

例子:
在此示例中,我们创建一个以 ID 作为主键的 CUSTOMERS 表,NOT NULL 是约束,表明在表中创建记录时这些字段不能为 NULL -

CREATE TABLE CUSTOMERS (   
    ID   INT              NOT NULL,   
    NAME VARCHAR (20)     NOT NULL,   
    AGE INT              NOT NULL,   
    ADDRESS CHAR (30),  
    SALARY   DECIMAL (18, 2),          
    PRIMARY KEY (ID)
);

可以通过查看 SQL 生成的消息来验证表是否创建成功。可以使用以下命令来验证 -

exec sp_columns CUSTOMERS

该命令产生给定的输出 -

TABLE_QUALIFIER    TABLE_OWNER    TABLE_NAME    COLUMN_NAME    DATA_TYPE    TYPE_NAME
PRECISION   LENGTH   RADIX   SCALE   NULLABLE   REMARKS   COLUMN_DEF   SQL_DATA_TYPE
SQL_DATETIME_SUB    CHAR_OCTET_LENGTH    ORDINAL_POSITION    IS_NULLABLE    SS_DATA_TYPE
TestDBdbo    CUSTOMERS   ID        4    int      10   4    0      10     0
   NULL   NULL     4   NULL        NULL   1    NO      56 

TestDBdbo    CUSTOMERS   NAME      12   varchar  20   20   NULL   NULL   0
   NULL   NULL      12   NULL         20          2    NO          39

TestDBdbo    CUSTOMERS   AGE       4    int      10   4    0      10     0
   NULL   NULL        4   NULL     NULL      3    NO     56 

TestDBdbo    CUSTOMERS   ADDRESS   1    char     25   25   NULL   NULL   1
   NULL   NULL         1   NULL         25           4     YES     39  

TestDBdbo    CUSTOMERS   SALARY    3    decimal  18   20   2      10     1
   NULL   NULL         3   NULL       NULL      5       YES      106

可以看到数据库中有 CUSTOMERS 表,用它来存储与客户相关的所需信息。