文档详情

数据库系统原理第三章GW.ppt

发布:2017-06-18约9.19千字共67页下载文档
文本预览下载声明
第3章: SQL语言基础及数据定义功能 3.1 SQL语言概述 3.2 SQL语言支持的数据类型 3.3 数据定义功能 3.4 索引 3.1 SQL语言概述 SQL(Structured Query Language)是用户操作关系数据库的通用语言。 它包含数据定义、数据查询、数据操作和数据控制等与数据库有关的全部功能。 SQL已经成为关系数据库的标准语言,现在所有的关系数据库管理系统都支持SQL。 3.1 SQL语言概述 3.1.1 SQL语言的发展 3.1.2 SQL语言的特点 3.1.3 SQL语言功能概述 3.1 SQL语言概述 3.1.1 SQL语言的发展 1986年10月由美国ANSI 公布最早的SQL标准。 1989年4月,ISO提出了具备完整性特征的SQL,称为SQL-89(SQL1)。 1992年11月,ISO又公布了新的SQL标准,称为SQL-92(以上均为关系形式) (SQL2) 。 1999年颁布SQL-99(SQL3) ,是SQL92的扩展。 3.1 SQL语言概述 3.1.2 SQL语言的特点 1. 一体化 2. 高度非过程化 3. 简洁 4. 使用方式多样 3.1 SQL语言概述 3.1.3 SQL语言功能概述 四部分:数据定义功能、数据控制功能、数据查询功能和数据操纵功能。 3.2 SQL语言支持的数据类型 数值型 字符串型 日期时间型 货币型 3.2 SQL语言支持的数据类型 数值型 准确型 整数 Bigint: 8字节, Int:4字节 Smallint:2字节, Tinyint:1字节 Bit:1位,存储1或0 小数 Numeric(p,q)或Decimal(p,q), 其中:p为数字位长度,q:小数位长度。 近似型 Float:8字节 Real:4字节 3.2 SQL语言支持的数据类型 字符串型 普通编码字符串类型 统一字符编码字符串类型 二进制字符串类型 3.2 SQL语言支持的数据类型 普通编码字符串类型 Char(n):定长存储,n=8000 Varchar(n):不定长存储(按实际长度存储),长度最大不超过n , n=8000 注:n 为字符个数 Text:存储大于8000字节的文本 3.2 SQL语言支持的数据类型 统一字符编码字符串类型 nchar(n):定长存储,n=4000 nvarchar(n):不定长存储,长度最大不超过n , n=4000 ntext:存储大于8000字节的文本 特点:每个字符占两个字节 3.2 SQL语言支持的数据类型 二进制字符串类型 Binary(n):固定长度,n = 8000。 Varbinary(n):可变长度,n =8000 。 注:n为二进制数据的字节数 image:大容量、可变长二进制字符数据,可用于存储文件。 3.2 SQL语言支持的数据类型 日期时间型 Datetime:8字节,年月日时分秒毫秒 (例:‘2008/02/03 10:30:00.000’ ) SmallDateTime:4字节,年月日时分 (例:‘2008/02/03 10:30:00’ ) 3.2 SQL语言支持的数据类型 货币类型 Money:8个字节,精确到货币单位的千分之十。 Smallmoney:4个字节,精确到货币单位的千分之十。 限制到小数点后 4 位。 可以带有适当的货币符号。例如,100 英镑可表示为 £100。 3.3 数据定义功能 3.3.1 基本表 3.3.2 数据完整性约束 3.3 数据定义功能 3.3.1 基本表 定义基本表 修改基本表 删除基本表 3.3 数据定义功能 定义基本表 使用CREATE TABLE语句实现, 语法格式: CREATE TABLE 表名( 列名 数据类型 [列级完整性约束定义] {, 列名 数据类型 [列级完整性约束定义] … } [, 表级完整性约束定义 ] ) 3.3 数据定义功能 在列级完整性约束定义处可以定义的约束 NOT NULL:限制列取值非空。 DEFAULT:给定列的默认值。 UNIQUE:限制列取值不重。 CHECK:限制列的取值范围。 PRIMARY KEY:指定本列为主键。 FOREIGN KEY:定义本列为引用其他表的外键。使用形式为: [FOREIGN KEY(外键列名)]REFERENCES 外表名(外表列名) 3.3 数据定义功能 几点说明 NOT NULL和DEFAULT只能是列级完整性约束; 其他约束均可在表级完整性约束处定义。 注意以下几点: 如果CHECK约束是定义多列之间的取值约束,则只能在表级完整性约束处定义; 如果表的主键由多个列组成,则也只能在表
显示全部
相似文档