关系数据库语言SQL和Transact-SQL.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关系数据库语言SQL和Transact-SQL

第1章 关系数据库语言SQL和Transact-SQL SQL Server 2000支持ANSI SQL(标准SQL,简称SQL),并将标准SQL扩展成为了更加实用的Transact-SQL。为了便于学习和实验,本章将标准SQL和Transact-SQL的语法对照列出,并给出了一些典型实例。 1.1 数据定义语言 SQL的数据定义功能主要包括对基本表、索引和视图的定义与维护;Transact-SQL的数据定义功能包括数据库和数据库对象的创建与管理功能,数据库对象有基本表、索引、视图、缺省、规则、触发器和存储过程等。 1.1.1 标准SQL的数据定义语言 SQL的基本表定义和维护功能使用基本表的定义、修改和删除三种语句实现。 1.定义基本表 SQL语言使用CREATE TABLE语句定义基本表,定义基本表语句的一般格式为: CREATE TABLE [库名](表名)( 列名数据类型[列级完整性约束条件] [,列名数据类型[列级完整性约束条件]][,…n] [,表级完整性约束条件][,…n]); (1) SQL支持的数据类型 不同的数据库系统支持的数据类型不完全相同。IBM DB2 SQL支持的数据类型见表1-1,尽管表1-1中列出了许多数据类型,但实际上使用最多的是字符型数据和数值数据。因此,要求必须熟练掌握CHAR、INTEGER、SMALLINT和DECIMAL数据类型。 表1-1 IBM DB2 SQL支持的主要数据类型 类型表示 类型说明 SMALLINT 半字长二进制整数。15bits数据 INTEGER或INT 全字长(四字长)整数。31bits数据 数值型数据 DECIMAL(p[,q]) 十进制数,共P位,其中小数点后q位。O≤q≤p,q=0时可省略不写 FLOAT 双字长浮点数 CHARTER(n)或CHAR(n) 长度为n的定长字符串 字符型数据 VARCHAR(n) 最大长度为n的变长字符串 GRAPHIC(n) 长度为n的定长图形字符串 特殊数据类型 VARGRAPHIC(n) 最大长度为n的变长图形字符串 DATE 日期型,格式为YYYY-MM-DD 日期时间型 TIME 时间型,格式为HH.MM.SS TIMESTAMP 日期加时间 (2)列级完整性约束条件 列级完整性约束是针对属性值设置的限制条件。SQL的列级完整性条件有以下4种: 1)NOT NULL或NULL约束。 NOT NULL约束是不允许字段值为空,而NULL约束是允许字段值为空。字段值为空的含义是该属性值“不详”、“含糊”或“无意义”。对于关系的主属性,必须限定是“N01 NULL”,以满足实体完整性;而对于一些不重要的属性,例如学生的爱好、特长等,则可以不输入字段值,即允许为NULL值。 2)UNIQUE约束。 UNIQUE约束是惟一性约束,即不允许该关系的该列中出现有重复的属性值。 3)DEFAULT约束。 DEFAULT为默认值约束。将列中的使用频率最高的属性值定义为DEFAULT约束中的默认值,可以减少数据输入的工作量。 DEFAULT约束的格式为: DEFAULT 约束名 默认值 FOR 列名 4)CHECK约束。 CHECK为检查约束。CHECK约束通过约束条件表达式设置列值应满足的条件。 CHECK约束的格式为: CONSTRAINT 约束名 CHECK (约束条件表达式) 列级约束的约束条件表达式中只涉及到一个列的数据。如果约束条件表达式涉及到多列属性,则它就成为表级的约束条件,应当作为表级完整性条件表示。 (3)表级完整性约束条件 表级完整性约束条件是指涉及到关系中多个列的限制条件。在上述的CHECK约束中,如果约束条件表达式中涉及到多列数据,它便为表级约束。表级约束有以下3种: 1)UNIQUE约束。 UNIQUE约束是惟一性约束。当要求列组的值不能有重复值时,就需要使用UNIQUE约束定义。 2)PRIMARY KEY约束。 PRIMARY KEY约束是实体完整性约束。PRIMARY KEY约束用于定义主码,它能保证主码的惟一性和非空性。PRIMARY KEY约束可直接写在主码后,也可按语法单独列出。 PRIMARY KEY 约束的语法为: CONSTRAINT 约束名 PRIMARY KEY [ CLUSTERED ]( 列组 ) 其中,CLUSTERED短语为建

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档