预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共23页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第3章SQL语言基础及数据定义功能本章学习目的与重难点3.1基本概念3.1.2SQL语言的特点 SQL语言是一种功能强大而又简洁易学的数据库语言,它主要有如下特点: (1)功能一体化; (2)高度非过程化; (3)语法简洁; (4)以多种方式使用。 3.1.3SQL语言功能概述 SQL语言的功能可分为四部分:数据定义、数据查询、数据操纵、数据控制,这些均由语句实现。 各部分功能的命令动词如下。3.2SQL数据类型其中p、q为精度和小数位数。 见P28表3-2。 2.近似型 指用于表示浮点型数据的近似数据类型。 有float、real等。 见P28表3-3。 3.2.2字符串型 指由汉字、字母、数字和各种符号组成的类型。 有char(n)、varchar(n)、text、image等。 其中n为字符串的最大长度。 见P28表3-4。3.2.3日期时间型 指用来存储日期和时间的类型。 有datetime、smalldatetime等。 见P29表3-5。 3.2.4货币型 指用来存储货币的类型。 有money、smallmoney等。 见P30表3-6。3.3数据定义功能功能:建立一个数据库。 例1:创建一个学生管理数据库student,各项均取默认值。 CreateDataBasestudent 例2:创建一个名为student1的数据库,其数据文件和日志文件均放在D盘根目录下。 CreateDataBasestudent On (Name=student1_data, FileName='d:\student1.mdf' )LogOn (Name=student1_log, FileName='d:\student1.ldf' ) (2)修改数据库 例3:修改数据库student的日志文件,把分配空间增加到5MB,最大空间增加到10MB。 AlterDataBasestudent ModifyFile (Name=student_log, Size=5mb, MaxSize=10mb)(3)删除数据库 格式:DropDataBase数据库名 功能:删除指定数据库。 例:删除学生管理数据库student。 DropDataBasestudent 3.3.1数据表建立和删除 (1)建立数据表 格式:CreateTable数据表名 (列名类型[完整性约束] ,… [,完整性约束])功能:建立一个数据表。 其中:完整性约束可有如下几种 NotNull:非空 Default:默认 Unique:唯一 Check:检查 PrimaryKey:主码 ForeignKey:外码 References:参照,定义外码用 例1:在数据库student中,建立三个表:学生信息表(S)、课程信息表(C)、选课信息表(SC),语句如下:USEstudent--使用数据库student CreateTableS (学号char(7)PrimaryKey, 姓名char(8)NotNull, 性别char(2)Default'男', 所在系char(10) ) CreateTableC (课程号char(2)PrimaryKey, 课程名char(20)NotNullUnique, 学分tinyint )CreateTableSC (学号char(7)ReferencesS(学号), 课程号char(2)NotNull, 成绩smallintCheck(成绩>=0), PrimaryKey(学号,课程号) ForeignKey(课程号)ReferencesC(课程号) ) (2)删除数据表 格式:DropTable表名,… 功能:删除数据表。 例:删除数据表text,语句为 DropTabletext3.3.2修改表结构 格式:AlterTable表名 [AlterColumn列名新类型 |Add新列名类型[完整性约束] |DropColumn列名] 功能:修改列类型、添加新列、删除列。 例2:为表SC添加新列修课类别。 AlterTableSC Add修课类别char(4) 例3:修改表SC中修课类别的类型。 AlterTableSC AlterColumn修课类别char(6)例4:删除表SC中的列修课类别。 AlterTableSC DropColumn修课类别 3.3.3数据完整性 1.完整性约束的作用对象 (1)列级约束 指对列的类型、取值范围、精度等的约束。 如:学号为7位字符串,姓名不能为空,成绩应在0-100之间等。 (2)元组约束 指元组中各字段之间的约束。如:借书日期小于还书日期等。 (3)关系约束 指若干个元组之间、关系之间的约束。 如:学号不能相同,选课表中学号的值要在学生表的学号中存在等。 2.实现数据完整性 完整性约束可以在定义