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

原创 2007年09月19日 09:41:00

表的创建

使用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

 

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

修改表SQL语言提供了ALTER TABLE语句来修改表的结构。基本语法如下:ALTER TABLE table_name  ADD [column_name data_type]       [PR...
  • popkiler
  • popkiler
  • 2007年09月19日 09:42
  • 366

懒人摘抄(内容转自CSDN资源中教程)-数据查询00

数据查询数据库存在的意义在于将数据组织在一起,以方便查询。“查询”的含义就是用来描述从数据库中获取数据和操纵数据的过程。SQL语言中最主要、最核心的部分是它的查询功能。查询语言用来对己经存在于数据库中...
  • popkiler
  • popkiler
  • 2007年09月19日 09:44
  • 385

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

删除关联和表使用SQL语言要比使用企业管理器删除表容易得多。删除表的语法如下:DROP TABLE table_name其中,“table_name”指出要删除表的名称。例如,要删除book表,可执行...
  • popkiler
  • popkiler
  • 2007年09月19日 09:43
  • 354

懒人摘抄(内容转自CSDN资源中教程)-数据查询02-选择查询

选择查询选择查询就是指定查询条件,只从表提取或显示满足该查询条件的记录。为了选择表中满足查询条件的某些行,可以使用SQL命令中的WHERE子句。WHERE子句的查询条件是一个逻辑表达式,它是由多个关系...
  • popkiler
  • popkiler
  • 2007年09月19日 09:46
  • 353

懒人摘抄(内容转自CSDN资源中教程)-数据查询03-排序查询

排序查询通过在SELECT命令中加入ORDER BY子句来控制选择行的显示顺序。ORDER BY子句可以按升序(缺省或ASC)、降序(DESC)排列各行,也可以按多个列来排序。注意:ORDER BY子...
  • popkiler
  • popkiler
  • 2007年09月19日 09:46
  • 529

懒人摘抄(内容转自CSDN资源中教程)-数据查询08-带EXISTS测试的子查询

带EXISTS测试的子查询   在子查询中,还可以使用EXISTS,它一般用在WHERE子句中,其后紧跟一个SQL子查询,从而构成一个条件,当该子查询至少存在一个返回值时,这个条件为真(.T.),否则...
  • popkiler
  • popkiler
  • 2007年09月19日 09:51
  • 431

懒人摘抄(内容转自CSDN资源中教程)-数据查询01-投影查询

投影查询使用SELECT语句可以选择查询表中的任意列,其中,“列表名”指出要检索的列的名称,可以为一个或多个列。当为多个列时,中间要用“,”分隔。FROM子句指出从什么表中提取数据,如果从多个表中取数...
  • popkiler
  • popkiler
  • 2007年09月19日 09:45
  • 385

懒人摘抄(内容转自CSDN资源中教程)-数据查询06-子查询

子查询当一个查询是另一个查询的条件时,称之为子查询。子查询可以使用几个简单命令构造功能强大的复合命令。子查询最常用于SQL命令的WHERE子句中,我们按照子查询返回单个值还是一组值(此时子查询前应接关...
  • popkiler
  • popkiler
  • 2007年09月19日 09:49
  • 476

懒人摘抄(内容转自CSDN资源中教程)-数据查询05-表的连接查询

表的连接查询    在数据查询中,经常涉及到提取两个或多个表的数据,这就需要使用表的连接来实现若干个表数据的联合查询。在一个查询中,当需要对两个或多个表连接时,可以指定连接列,在WHERE子句中给出连...
  • popkiler
  • popkiler
  • 2007年09月19日 09:49
  • 529

懒人摘抄(内容转自CSDN资源中教程)-数据查询04-使用聚合函数

使用聚合函数   聚合函数用于实现数据统计等功能,常月的聚合函数如表5.1所列。表5.1 聚合函数 函数名 ...
  • popkiler
  • popkiler
  • 2007年09月19日 09:48
  • 485
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:懒人摘抄(内容转自CSDN资源中教程)-建表
举报原因:
原因补充:

(最多只允许输入30个字)