第3章关系数据库标准语言SQL-数据库基础课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第3章关系数据库标准语言SQL-数据库基础课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关系 数据库 标准 语言 SQL 基础 课件
- 资源描述:
-
1、北京服装学院计算机信息中心北京服装学院计算机信息中心第第3 3章章 关系数据库标准语言关系数据库标准语言SQL 数据库基础数据库基础应用应用软件软件用户级别用户级别-操作最简单操作最简单-功能受约束功能受约束-需购买软件需购买软件企业企业管理器管理器管理员级别管理员级别-操作简单操作简单-功能较全功能较全-直接使用直接使用DBMSSQL语言语言高级管理员、程序员级别高级管理员、程序员级别-操作较复杂操作较复杂-使用最灵活,效率最高使用最灵活,效率最高-直接使用直接使用DBMS-可用于开发应用软件可用于开发应用软件第第3章章 关系数据库标准语言关系数据库标准语言SQL本章主要内容本章主要内容3.
2、1 3.1 SQLSQL语言语言概述概述(了解)了解)3.2 3.2 数据定义数据定义(重点)(重点)3.2.1 3.2.1 操作数据库操作数据库3.2.2 3.2.2 操作表操作表3.2.3 3.2.3 索引的创建和删除索引的创建和删除3.3 3.3 数据查询数据查询(重点)(重点)3.3.1 3.3.1 单表查询单表查询3.3.2 3.3.2 连接查询连接查询3.3.3 3.3.3 嵌套嵌套查询查询3.3.4 3.3.4 联合查询联合查询3.4 3.4 数据更新数据更新(重点)(重点)3.4.1 3.4.1 插入数据插入数据3.4.2 3.4.2 修改数据修改数据3.4.3 3.4.3 删
3、除删除数据数据3.5 3.5 视图的创建和删除视图的创建和删除(了解了解)第第3章章 关系数据库标准语言关系数据库标准语言SQL3.1.1 SQL语言的发展语言的发展 SQL语言是当前最为成功,应用最为广泛的关系数据库语言是当前最为成功,应用最为广泛的关系数据库语言,其发展主要经历了以下几个阶段:语言,其发展主要经历了以下几个阶段:SQUARE 阶段阶段SEQUEL阶段阶段SQL阶段阶段 现在现在SQL语言应用于语言应用于Oracle,Sybase,Access 和和 SQL Server等。等。3.1.2 T-SQL语言语言SQL(Structured Query Language,结构化,
4、结构化查询查询语言)包括语言)包括数据定义数据定义、数据查询数据查询、数据更新数据更新、数据、数据控制等功能。控制等功能。Access 中使用的中使用的SQL语言称为语言称为 J-SQL。SQL Server中使用的中使用的SQL语言称为语言称为 T-SQL。Microsoft 针对其自身数据库产品设计开发了针对其自身数据库产品设计开发了遵循遵循SQL标准的结构化查询语言。标准的结构化查询语言。3.1.2 T-SQL语言语言 54321 具有极强的数据操作功能具有极强的数据操作功能 高度非过程化高度非过程化 操作面向集合操作面向集合 语法结构高度统一语法结构高度统一 语言简洁,易学易用语言简洁
5、,易学易用Create Table 创建表创建表Alter Table 修改表修改表Drop Table 删除表删除表Select from查询表查询表Table表表3.1.2 T-SQL语言语言 在在SQL语言中,默认如下的符号约定:语言中,默认如下的符号约定:1)中的内容是中的内容是必须必须的,是用户自定义语义;的,是用户自定义语义;2)为为任选项任选项;3)与分隔符与分隔符|组合使用,即组合使用,即必选其中之一项必选其中之一项;4),n表示前面的项目表示前面的项目可以重复多次可以重复多次;5)SQL语言语言不区分大小写字母不区分大小写字母;6)SQL语句中的语句中的标点均采用西文输入法标
6、点均采用西文输入法。3.1.2 T-SQL语言语言数据库数据库T-SQL使用数据定义语言使用数据定义语言(Data Defined Language,DDL)完成对数据库对象的创建、修改和删除。完成对数据库对象的创建、修改和删除。数据库对象包括数据库对象包括数据库数据库、表表、视图、视图、索引索引、触发器等。、触发器等。3.2 数据定义数据定义表表视图视图索引索引 Create语句:创建新的数据库对象语句:创建新的数据库对象 Alter语句:修改已有对象的结构语句:修改已有对象的结构 Drop语句:删除已有的数据库对象语句:删除已有的数据库对象 1.创建数据库创建数据库Create Datab
7、ase on Primary ,n ,n Log on ,n 3.2.1 操作数据库操作数据库Create Database:创建数据库的关键字:创建数据库的关键字数据库名称:可以是英文或中文,用户自定义数据库名称:可以是英文或中文,用户自定义【例例3-1】创建创建“salesystem”数据库,参数取系统默认值数据库,参数取系统默认值Create Database salesystem必须有必须有空格空格3.2.1 操作数据库操作数据库必须有必须有空格空格3.2.1 操作数据库操作数据库Create Database salesystemOn Primary(Name=salesystem,
8、Filename=C:Program FilesMicrosoft SQL ServerMSSQLData salesystem.Mdf,Size=10mb,Maxsize=30mb,Filegrowth=1mb)Log On(Name=salesystem _Log,Filename=C:Program FilesMicrosoft SQL ServerMSSQLData salesystem _Log.Ldf,Size=2mb,Maxsize=6mb,Filegrowth=10%)主数据主数据文件文件日志日志文件文件 补充补充内容内容 2.数据库的修改数据库的修改Alter Databas
9、e add file ,n TO FILEGROUP 文件组名称文件组名称|add log file ,n|remove file with delete|modify file|modify name=新的数据库名称新的数据库名称|add filegroup 文件组名称文件组名称|remove filegroup 文件组名称文件组名称|modify filegroup 文件组名称文件组名称filegroup_property|name=新文件组名称新文件组名称3.2.1 操作数据库操作数据库【例例3-2】将将“学生管理学生管理”数据库数据库的初始容量修改为的初始容量修改为100MBAlter
10、 Database 学生管理学生管理modify file(Name=学生管理学生管理,Size=100MB)3.2.1 操作数据库操作数据库初始容量默认为初始容量默认为1MB 3.数据库的删除数据库的删除Drop Database 3.2.1 操作数据库操作数据库l 该命令将删除数据库及其该命令将删除数据库及其包含的所有数据库对象,因包含的所有数据库对象,因此要慎用。此要慎用。l 该命令不能该命令不能删除删除系统数据系统数据库库和正在使用的数据库。和正在使用的数据库。【例例3-3】删除删除“salesystem”和和“学生管理学生管理”数据库。数据库。Drop Database salesy
11、stem Drop Database 学生管理学生管理 或者或者 Drop Database salesystem,学生管理学生管理 3.2.1 操作数据库操作数据库必须是西文状必须是西文状态下的逗号态下的逗号 表中的内容表中的内容2 表的结构表的结构13.2.2 操作表操作表表是数据库最重要的对象之一表是数据库最重要的对象之一列名称列名称数据类型数据类型uidvarchar(20)upasswordvarchar(6)utypevarchar(20)unamevarchar(20)uaddrvarchar(50)utelvarchar(20)uemailvarchar(30)uaccount
12、floatuid毛毛熊毛毛熊upassword1234utype顾客顾客uname闫弘闫弘uaddr北京市西城区鼓楼大街北京市西城区鼓楼大街26号号uaccount 9760 2.表结构的创建表结构的创建Create Table (完整性约束完整性约束 ,完整性约束完整性约束 ,n)3.2.2 操作表操作表表名,在同一个数据库中,表的名称不允许重复。表名,在同一个数据库中,表的名称不允许重复。列名,同一表中不许有重复的列名。列名,同一表中不许有重复的列名。,n 表示表中可设计表示表中可设计n个列,每列定义用逗号隔开。个列,每列定义用逗号隔开。3.2.2 操作表操作表【例例3-4】在在sales
13、ystem数据库中建立一个数据库中建立一个users(用户用户信息信息)表,表结构如下表,表结构如下Create Table users(uid varchar(20),upassword varchar(6),utype varchar(20),uname varchar(20),uaddr varchar(50),utel varchar(20),uemail varchar(30),uaccount float);列名称列名称数据数据类型类型说明说明字段字段大小大小uid字符字符用户用户ID最大最大20upassword 字符字符用户用户密码密码最长最长6utype字符字符用户用户类型类
14、型最长最长20uname字符字符收货人收货人姓名姓名最长最长20uaddr字符字符收货人收货人地址地址最长最长50utel字符字符收货人收货人电话电话最长最长20uemail字符字符收货人电子收货人电子邮箱邮箱最长最长30uaccount数字数字用户帐户用户帐户余额余额注意:注意:1)单个列定义语句的关键字之间用)单个列定义语句的关键字之间用空格空格分隔,不使用标点。分隔,不使用标点。2)定义表时每列之间用)定义表时每列之间用逗号逗号分隔,最后一条语句不用逗号。分隔,最后一条语句不用逗号。3)表名之后的所有列要用)表名之后的所有列要用圆括弧圆括弧括起来。括起来。4)SQL 语句以语句以分号分号
15、结束或者结束或者无任何符号无任何符号。5)SQL语句语句不区分大小写,标点均使用西文输入法录入。不区分大小写,标点均使用西文输入法录入。3.2.2 操作表操作表Create Table users(uid varchar(20),upassword varchar(6),uaccount float )逗号逗号分隔分隔最后一列最后一列没有逗号没有逗号数据类型数据类型名称名称取值范围取值范围Char定长定长字符型字符型 08000个个字符字符Varchar变长变长字符型字符型 08000个个字符字符Int整型整型-231231-1Float浮点型浮点型-1.7910308 1.7910308 T
16、ext文本型文本型0231-1 个个字符字符Datetime日期时间型日期时间型 1753/1/19999/12/31,时间精度是时间精度是1/300秒秒3.2.2 操作表操作表T-SQL中常用的数据类型(中常用的数据类型(P42详见表详见表3-4)3.2.2 操作表操作表l 定义定义完整性约束完整性约束,可以防止非法的数据更新操作,保,可以防止非法的数据更新操作,保护数据。例如:要求必须填写、要求输入的数据在某护数据。例如:要求必须填写、要求输入的数据在某个范围内等。个范围内等。l 完整性约束的基本语法格式为:完整性约束的基本语法格式为:Constraint 约束名约束名 列名列名数据类型数
17、据类型 字段大小字段大小uid varchar(20)3.2.2 操作表操作表Primary Key 约束(主键约束)约束(主键约束)1Unique 约束(唯一键约束)约束(唯一键约束)2Foreign Key 约束(外键约束)约束(外键约束)3Null/Not Null 约束约束(空(空/非空约束)非空约束)4Check 约束约束(检查约束)(检查约束)5【例例3-4】在在salesystem数据库中建立一个数据库中建立一个users(用户用户信息信息)表,表,注意主键约束和非空约束的设置注意主键约束和非空约束的设置。Create Table users (uid varchar(20)pr
18、imary key,upasswordvarchar(6)not null,uaccount float not null )3.2.2 操作表操作表Primary Key定义表的主键,起唯一标识作用,其定义表的主键,起唯一标识作用,其值不能为值不能为空,也不能出现重复空,也不能出现重复,以此来保证实体的完整性。一旦将某,以此来保证实体的完整性。一旦将某列设置为主键,系统会自动为其增加非空约束。列设置为主键,系统会自动为其增加非空约束。一个表中只一个表中只能定义一个能定义一个Primary Key约束约束。【例例3-5】在在salesystem数据库中建立一个数据库中建立一个product(商
19、商品信息品信息)表。表。Create Table product (pid char(10)primary key,pname varchar(30)not null,profiletext ,picturevarchar(100)3.2.2 操作表操作表没有约束,没有约束,允许为空允许为空若为表中的一列同时设定两种约束,格式为:若为表中的一列同时设定两种约束,格式为:pnamevarchar(30)not null unique,使用空格使用空格分开分开Primary Key与与Unique区别:区别:在在一个表中只能定义一个表中只能定义一个一个Primary Key约束,但约束,但可定义可
20、定义多个多个Unique约束;约束;对于对于指定为指定为Primary Key的列的列不能不能出现空值出现空值,而,而对于对于Unique所约束的唯一键所约束的唯一键,允许允许有一个数据项有一个数据项为空值为空值。不允许为一列既不允许为一列既定义定义 Unique 约束,又定义约束,又定义Primary Key约束。约束。3.2.2 操作表操作表【例例3-6】在在salesystem数据库中建立一个数据库中建立一个orders(订单订单)表,表,注意外键约束的设置注意外键约束的设置。Create Table orders (oidchar(10)primary key,uidvarchar(2
21、0)references users(uid)not null,pidchar(10)references product(pid)not null,)3.2.2 操作表操作表外键外键约束约束10000000017樱桃000000000910000000027小鱼菁菁000000000710000000006毛毛熊00000000040000000001test0000000001PamountPidUidOid1李洋顾客test樱桃北京市朝阳区黄贺顾客test小鱼菁菁北京市西城区闫弘顾客test毛毛熊北京市昌平区王燕顾客testtest管理员adminadminUaddrUnameUtype
22、UpasswordUid3.2.2 操作表操作表外键约束:外键约束:包含外键的表称为包含外键的表称为从表,从表,将外键作为将外键作为主键的表称为主键的表称为主表。主表。users表表(主表主表)orsers表表(从表从表)外键外键主键主键3.2.2 操作表操作表users表表的主键的主键product表的主键表的主键orders表的外键表的外键pid必须必须是是product表表中已有的中已有的pidorders表的外键表的外键uid必须必须是是users表表中已有的中已有的uid主表主表主表主表从表从表orders表表的外键的外键 3.表结构的修改表结构的修改Alter Table 表名表名
23、 Add 完整性约束完整性约束|Drop Column ,n|Drop Constraint,n3.2.2 操作表操作表 指定需要修改的表;指定需要修改的表;Add 子句用于增加新列和新的完整性约束条件;子句用于增加新列和新的完整性约束条件;Drop 子句用于删除指定的列和完整性约束条件。子句用于删除指定的列和完整性约束条件。【例例3-7】向向users(用户信息用户信息)表中表中增加一个表示性别的增加一个表示性别的sex列列。Alter Table users Add sex char(2)Null3.2.2 操作表操作表 注意:使用此方注意:使用此方式增加的新列一式增加的新列一律为空值,所
24、以律为空值,所以不能为增加的新不能为增加的新列指定列指定Not Null约束约束。【例例3-8】删除删除users(用户信息用户信息)表中存储用户电子邮箱表中存储用户电子邮箱的的uemail列列。Alter Table users Drop Column uemail3.2.2 操作表操作表请不要请不要漏掉漏掉3.2.2 操作表操作表4.表结构的删除表结构的删除 一旦删除了表,表的结构、数据、约束、索引都一旦删除了表,表的结构、数据、约束、索引都将被删除,将被删除,而而建立在该表上的视图不会随之删除,系建立在该表上的视图不会随之删除,系统将继续保留其定义,但已无法使用统将继续保留其定义,但已无
25、法使用。删除删除表的命令格式为:表的命令格式为:Drop Table 3.2.2 操作表操作表【例例3-9】删除删除orders(订单订单)表。表。Drop Table orders 主表主表主表主表从表从表【提示提示】对于对于“网上购物网上购物系统系统”所使用的三张表,所使用的三张表,如果都想删除,存在删除如果都想删除,存在删除顺序的问题,应该顺序的问题,应该先删除先删除从表从表orders表,解除外键表,解除外键约束后,约束后,再删除两张主表再删除两张主表。3.2.3 索引的创建与删除索引的创建与删除索引索引(Index)索引是数据库随机检索的常用手段,类似书的目录。索引是数据库随机检索的
展开阅读全文