懒人摘抄(内容转自CSDN资源中教程)-建表

表的创建

使用CREATE TABLE语句来建立表,其语法如下:

CREATE TABLE table_name

(

    column_namel data_type [NULL | NOT NULL] [PRIMARY | UNIQUE]

                                [FOREIGN KEY [(column_name)]]

                                REFERENCES ref_table [(ref_column)]

[column_name2 data_type ]

……

)

其中,各参数含义如下:

·          table_name 要创建的表的名称。

·          column_namel  第一个字段名称。

·          data_type  指定字段的数据类型。

其余为字段属性设置参数,将在下面介绍。

(1) 基本用法

例如,在test数据库中创建一个clients表,SQL语句如下:

USE test

CREATE TABLE clients (

cid int,

cname char(8),

address char(50)

)

其中第1行表示使用test数据库,创建的表clients中包含3个字段:cidcnameaddress。数据类型分别为整型、字符型(长度为8)和字符型(长度为50)

提示:USE语句只要在第一次使用即可,后续的SQL语句都是作用在该数据库中。若要使用其他的数据库,才需要再次执行USE语句。

(2) 段属性参数

除了可以设置字段的数据类型外,还可以利用一些属性参数来对字段做出限定。例如,将字段设置为主键,限制字段不能为空等。

常用的属性参数如下:

·          NULLNOT NULL  限制字段可以为NULL(),或者不能为NULL()

·          PRIMARY KEY  设置字段为主键。

·          UNIQUE  指定字段具有惟一性。

例如,下面的SQL语句是在test数据库中建立一个book表,并指定bid为主键,而bname为非空:

CREATE TABLE book (

    bid int NOT NULL PRIMARY KEY,

    bname char(8) NOT NULL,

    authorid char(10)

)

(3) 与其他表建立关联

表的字段可能参考到其他表的字段,这就需要将两个表建立关联。此时,就可以使用如下的语法:

FOREIGN KEY REFERENCE ref_table(ref_column)

其中,“ref_table”指出要关联的表,“ref_column”指出要关联的字段名称。

例如,可以将book表中的authorid字段关联到authors表的authorid字段。在企业管理器中将前面创建的book表删除,然后执行下面的语句:

CREATE TABLE authors (

   authorid int NOT NULL PRIMARY KEY,

   authorname char(20),

   address char(30)

)

 

CREATE TABLE book (

    bid int NOT NULL PRIMARY KEY,

    bname char(8) NOT NULL,

    authorid int FOREIGN KEY REFERENCES authors(authorid)

)

上面的语句首先创建一个authors表,然后创建book表,并将authorid字段关联到authors表的authorid字段。

提示:在创建book表时,由于将authorid字段关联到了authors表,因此authors表必须存在。这也是上面首先创建authors表的原因。

另外,可以使用SELECT INTO 语句创建一个新表,并用 SELECT 的结果集填充该表。新表的结构由选择列表中表达式的特性定义,例如,以下命令创建student1表,它包含student表的snosnameclass等三个字段和对应的记录:

SELECT sno,sname,class INTO student1 FROM student

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值