欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

3.表的创建

程序员文章站 2022-05-29 15:59:06
...

一、语法规则

我们使用 CREATE TABLE 语句在其中创建表。CREATE TABLE 语句的语法如下所示 :

CREATE TABLE <表名> (
 <列名1> <数据类型> <该列所需约束>, 
 <列名2> <数据类型> <该列所需约束>, 
 <列名3> <数据类型> <该列所需约束>, 
 <列名4> <数据类型> <该列所需约束>, 
 ...
 <该表的约束1>, <该表的约束2>,....)

该语法清楚地描述了我们要创建一个包含 < 列名 1>、< 列名 2>、……的名称为 < 表名 > 的表,非常容易理解。每一列的数据类型(后述)是必须要指定的,还要为需要的列设置约束(后述)。约束可以在定义列的时候进行设置,也可以在语句的末尾进行设置。

注: 有些约束只能以列为单位进行设置。比如:not null。有的约束只能在语句末尾设置,比如说:外键约束。

#实例
CREATE TABLE Product(
 product_id CHAR(4) NOT NULL,
 product_name VARCHAR(100) NOT NULL,
 product_type VARCHAR(32) NOT NULL,
 sale_price INTEGER ,
 purchase_price INTEGER ,
 regist_date DATE ,
 PRIMARY KEY (product_id));

二、数据类型

所有的列都必须指定数据类型。数据类型表示数据的种类,包括数字型、字符型和日期型等。每一列都不能存储与该列数据类型不符的数据。声明为整数型的列中不能存储’abc’这样的字符串,声明为字符型的列中也不能存储 1234 这样的数字。

我们介绍四种基本数据类型:

1.INTEGER型

用来指定存储整数的列的数据类型(数字型),不能存储小数。

2.CHAR型

CHAR是CHARACTER(字符)的缩写,是用来指定存储字符串的列的数据类型(字符型)。可以像CHAR(10)或者CHAR(200)这样,在括号中指定该列可以存储的字符串的长度(最大长度)。字符串超出最大长度的部分是无法输入到该列中的。

字符串以定长字符串的形式存储在被指定为CHAR型的列中。所谓定长字符串,就是当列中存储的字符串长度达不到最大长度的时候,使用半角空格进行补足。例如,我们向CHAR(8)类型的列中输入’abc’的时候,会以

'abc '(abc后面有5个半角空格)的形式保存起来。

3.VARCHAR型

同CHAR类型一样,VARCHAR型也是用来指定存储字符串的列的数据类型(字符串类型),也可以通过括号内的数字来指定字符串的长度(最大长度)。但该类型的列是以可变长字符串的形式来保存字符串的B。定长字符串在字符数未达到最大长度时会用半角空格补足,但可变长字符串不同,即使字符数未达到最大长度,也不会用半角空格补足。例如,我们向VARCHAR(8)类型的列中输入字符串’abc’的时候,保存的就是字符串’abc’。

4.DATE型

用来指定存储日期(年月日)的列的数据类型(日期型)。