懒人摘抄(内容转自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

 

相关文章推荐

TableMaker[CSDN论坛建表小工具]

  • 2010年08月27日 14:48
  • 630KB
  • 下载

TableMaker[CSDN论坛建表小工具]

  • 2010年08月27日 16:33
  • 630KB
  • 下载

win7安装Qt4.8.5 For Windows 最详细的教程,附带所有安装文件-- 转自zgj_today的csdn空间

http://m.blog.csdn.net/blog/yhc13429826359/37735865 2014-7-13阅读148 评论0     为了安装qt4.8.6,鼓捣了...

win7安装Qt4.8.5 For Windows 最详细的教程,附带所有安装文件-- 转自zgj_today的csdn空间

为了安装qt4.8.6,鼓捣了好几天,还是安装错误,百度的安装教程也看了很多,结果还是不行,为了学QT还不能安装5.0的,最后在群里请教才知道是Qt4.8.5以后的minGW版本要是4.4以上,只好安...

免费编程入门教程资源推荐搜集,分享给想开始学习程序开发的同学--转自异次元空间

在不久之前,程序员 Sacha Greif 和创业者 Zach Sims 都表达了一个类似的观点:每一个人都应该学习编程。虽然这一个观点有点激进,但确实有一定的道理的。 你不一定需要过于追求对编...

C#知识库(转自csdn).rar

  • 2007年10月10日 21:02
  • 50KB
  • 下载

yii2 数据库操作 -转自懒人程序

yii2 数据库操作 2015-01-15   22176     懒人程序 开始使用数据库首先需要配置数据库连接组件,通过添加 db 组件到应用配置实现("基础的" Web 应用是 co...

MySQL教程 MySQL - 建库、建表、查询

本章通过演示如何使用mysql客户程序创造和使用一个简单的数据库,提供一个MySQL的入门教程。mysql(有时称为“终端监视器”或只是“监视”)是一个交互式程序,允许你连接一个MySQL服务器,运行...
  • vebasan
  • vebasan
  • 2012年05月30日 11:21
  • 3327

sqlite中如何查询数据库中存在的所有表?(转自:http://topic.csdn.net/u/20081231/16/6aee6233-32c2-4f20-a3d7-0cb154974ce4.)

sqlite中如何查询数据库中存在的所有表? 请指教!!! 官方文档就有。 http://www.sqlite.org/faq.html (7) How do I list all tab...
  • lslxdx
  • lslxdx
  • 2011年11月06日 15:56
  • 2357
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:懒人摘抄(内容转自CSDN资源中教程)-建表
举报原因:
原因补充:

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