首页课程SQL趣味课堂CREATE TABLE

CREATE TABLE

目录列表

SQL 表

单个数据库可以容纳数百个表,每个表都在数据库模式中扮演着自己独特的角色。

SQL 表由表行和列组成。表列负责存储许多不同类型的数据,包括数字,文本,日期和甚至文件。

CREATE TABLE 语句用于创建数据库中的表。

创建基本表包括命名表,并定义其列和每列的数据类型。


什么命令用于创建数据库中的表?

CREATE TABLE

CREATE TABLE 语句的基本语法如下:

CREATE TABLE table_name
(
column_name1 data_type(size),
column_name2 data_type(size),
column_name3 data_type(size),
....
columnN data_type(size)
);

column_name 参数规定表中列的名称。

data_type 参数规定列的数据类型(例如 varchar、integer、decimal、date 等等)。

size 参数规定表中列的最大长度。


现在,我们想要创建一个名为 “users” 的表,包含四个列:UserID,FirstName,LastName 和 City。

我们使用下面的 CREATE TABLE 语句:

CREATE TABLE users
(
   UserID int,
   FirstName varchar(100), 
   LastName varchar(100),
   City varchar(100)
);

UserID 列的数据类型是 int,包含整数。

FirstName、LastName和 City 列的数据类型是 varchar,包含字符,且这些字段的最大长度为 255 个字符。


在本小节中,"users" 表中的 "UserID" 列的数据类型应该为:

数据类型

数据类型定义列中存放的值的种类,数据库表中的每个列都要求有名称和数据类型。

如果一个名为 “FirstName” 的列将保存名称,则该列应具有 “varchar” (可变长度字符)数据类型。


下面列出了最常见的数据类型:

Number 类型:

  • INT(size):-2147483648 到 2147483647 常规。0 到 4294967295 无符号*。在括号中规定最大位数。

  • FLOAT(size,d):带有浮动小数点的小数字。在括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。

  • DOUBLE(size,d):带有浮动小数点的大数字。在括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。

Date 类型:

  • DATE():日期。格式:YYYY-MM-DD。

  • DATETIME():*日期和时间的组合。格式:YYYY-MM-DD HH:MM:SS。

  • TIMESTAMP():*时间戳。TIMESTAMP 值使用 Unix 纪元('1970-01-01 00:00:00' UTC) 至今的描述来存储。格式:YYYY-MM-DD HH:MM:SS。

  • TIME():时间。格式:HH:MM:SS。

String 类型:

  • VARCHAR(size):保存可变长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符串的最大长度。最多 255 个字符。

  • TEXT:存放最大长度为 65,535 个字符的字符串。

提示:SQL 开发人员必须在创建 SQL 表时决定表中的每个列将要存储的数据的类型。


在空格处填写,定义一个大小为 55 的 varchar 类型的 "some_column" 列。

some_column ( )

创建主键

UserID 是我们的 users 表主键的最佳选择。

下面的 SQL 在 "users" 表创建时,使用 PRIMARY KEY 关键字将 "UserId" 列定义为主键:

CREATE TABLE users
(
   UserID int,
   FirstName varchar(100),
   LastName varchar(100),
   City varchar(100),
   PRIMARY KEY(UserID)
);

填写空格,将 "id" 列定义为主键。

(id)

创建表

当我们运行查询时,我们的表将在数据库中创建。

“user” 表如下所示:

3FR1YQ1H8DL{~30~LSF9_CF.png

现在,你可以使用 INSERT INTO 语句将数据插入到表中。

填写空格,创建一个`users`表,设置int类型且长度为10的`id`为主键

table users( id , username (30), password varchar(20), (id) );