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

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

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

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

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

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

3.1SQL概述 3.2数据定义 3.3数据查询 3.4数据更新 3.5视图 3.6案例2:活期储蓄管理系统 数据库上的查询3.1SQL概述3.1.3SQL对象命名约定 SQL对象包括数据库、表、视图、属性名等。这些对象名必须符合一定规则或约定,一般应遵守下列规则。 数据对象名可以为1-30个字符(在MSAccess为64个字符),但有些DBMS限制为8个字符,例如:Oracle数据库就是如此。 数据对象名应以字母开头,其余字符可以由字母、数字、下划线组成。 3.1.4SQL语句结构和书写准则 在SQL语句语法格式中的一些约定符号: 尖括号“<>”中的内容为实际语义。 中括号“[]”中的内容为任选项。 [,...]意思是“等等”,即前面的项可以重复。大括号“{}”与竖线“|”表明此处为选择项,在所列出的各项中仅需选择一项。 例如:{A|B|C|D}意思是A、B、C、D中取其一。 SQL中的数据项(包括列项、表和视图)分隔符为“,”;其字符串常数的定界符用单引号“′”表示。 在编写SQL语句时,遵从某种准则以提高语句的可读性,使其易于编辑,是很有好处的。 以下是一些通常的准则: SQL语句对大小写不敏感 为了提高SQL语句的可读性,子句开头的关键字通常采用大写形式。 SQL语句可写成一行或多行,习惯上每个子句占用一行。 关键字不能在行与行之间分开,并且很少采用缩写形式。 SQL语句的结束符为分号“;”,分号必须放在语句中的最后一个子句后面,但可以不在同一行。3.2数据定义基本表是独立存储在数据库中的表 在SQL中一个关系对应一个基本表,一个(或多个)基本表对应一个存储文件,基本表对应的数据必须在数据库中存放。存储文件的物理结构对用户而言是透明的,用户无需关心。 一个基本表可以根据需要带一个或多个索引,索引也存放在存储文件中。 视图是由一个或几个基本表导出的,它的外部形式也是一个表,是由基本表中选取的行和列组成的 视图本身不独立,它依附于基本表,在数据库中不存放视图对应的数据,而只存放关于视图的定义,因此视图只是一个虚表。3.2.1数据库的创建与删除 创建数据库 SQL使用命令CREATEDATABASE创建数据库,其一般语法如下: CREATEDATABASE<数据库名>; 【例3-1】创建一个简单数据库。 CREATEDATABASEMyDb; 删除数据库 SQL使用命令DROPDATABASE删除一个或多个数据库,其一般语法如下: DROPDATABASE<数据库名1>[,<数据库名2>][,…]; 【例3-2】删除数据库MyDb。 DROPDATABASEMyDb;3.2.2表的创建与删除 创建基本表 创建基本表的结构是建立数据库最重要的一步,其一般语法如下: CREATETABLE<表名> (<列名><数据类型>[<列级完整性约束条件>] [,<列名><数据类型>[<列级完整性约束条件>]][,…] [,<表级完整性约束条件>][,…]); 说明: <表名>是指要创建的基本表的名称,该名称应符合具体DBMS的标识符的命名规则。<列名>指的是表的属性名称。定义表的各个属性时应指出其相应的数据类型和长度,不同DBMS支持的数据类型不完全相同,表3-2列出的是IBMDB2SQL支持的主要数据类型:关于完整性约束条件,需要说明以下几点: 完整性约束条件分为列级完整性约束条件和表级完整性约束条件,它们之间的区别在于:列级完整性约束条件只能用于列,而表级完整性约束条件能够用于一张表中的多列。 SQL的完整性约束条件有以下几种: NOTNULL或NULL约束 这个约束条件为列级完整性约束条件。NOTNULL为不允许该列存在空值,而NULL为允许该列存在空值。 UNIQUE约束 UNIQUE约束是惟一性约束。即不允许表中的某一列或者某几列有重复的属性值。 DEFAULT约束 DEFAULT约束为默认值约束,是列级完整性约束条件。当向表中插入一个新行时,如果对于特定列没有指定数值,则使用DEFAULT子句指定的默认值。CHECK约束 CHECK约束是检验约束,为插入列中的数据指定约束条件。 PRIMARYKEY约束 PRIMARYKEY约束即主键约束,是表级完整性约束条件。表中的主键可以是一列或列组,PRIMARYKEY约束可以使得主键的数值在每一行中各不相同。 注意:PRIMARYKEY约束类似于UNIQUE约束,差别在于PRIMARYKEY约束中的列不可以为空。 FOREIGNKEY约束 FOREIGNKEY约束是参照完整性约束,是用于约束外键的,也是表级完整性约束条件。【例3-3】创建“学生表”student,它由学号id、姓名name、性别sex、班级号class、出生日期birthday等5个属性组成。其中学号不能为空,值必