第3章 关系数据库标准语言——SQL

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Tempdb
3.3.2 SQL Server的实例数据库
实 例 数 据 库 Northwind 的 数据
pubs


实例数据库
\MSSQL\Install
Instpubs.sql Instnwnd.sql
3.3.3 创建用户数据库
用Enterprise Manager 创建数据库 用SQL命令创建数据库
数据的完整性 约束( 约束(Constraint) ) 正确性 默认( 默认(Default) ) 有效性 规则( 规则(Rule) ) 触发器( 触发器(Trigger) ) 存储过程( 存储过程(Stored Procedure) )
相容性
完整性约束的基本语法格式
[CONSTRAINT <约束名> ] <约束类型>
SQL语言具有数据查询,数据定义,数据操纵和数据控 制四种功能
3.2 了解SQL Server 2000
SQL Server是一个关系数据库管理系统 是一个关系数据库管理系统
企业版(Enterprise Edition) 企业版( ) 标准版( 标准版(Standard Edition) ) 个人版( 个人版(Personal Edition) ) 开发者版( 开发者版(Developer Edition) )
[例3-2] 修改Northwind数据库中的Northwind文件增容方式为一次增加 2MB. ALTER DATABASE Northwind MODIFY FILE ( NAME = Northwind, FILEGROWTH = 2mb )
3.3.5 删除用户数据库
用Enterprise Manager删除数据库 用SQL命令删除数据库
3.3.4 修改用户数据库 用Enterprise Manager修改数据库
用SQL命令修改数据库
ALTER DATABASE database_name { ADD FILE <filespec> [,...n] [TO FILEGROUP filegroup_name] | ADD LOG FILE <filespec> [,...n] | REMOVE FILE logical_file_name [WITH DELETE] | ADD FILEGROUP filegroup_name | REMOVE FILEGROUP filegroup_name | MODIFY FILE <filespec> | MODIFY NAME = new_dbname | MODIFY FILEGROUP filegroup_name {filegroup_property | NAME = new_filegroup_name } | SET < optionspec > [ ,...n ] [ WITH < termination > ] | COLLATE < collation_name > }
第3章 关系数据库标准语 言——SQL
3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9
SQL语言的基本概念与特点 了解SQL Server 2000 创建与使用数据库 创建与使用数据表 创建与使用索引 数据查询 数据更新 视图 数据控制
数据查询 结构化查询语言 Structured Query Language 数据定义 数据操纵 数据控制
指明基本表在某一列或多个列的组合上的取值必须惟一 在建立UNIQUE约束时,需要考虑以下几个因素:
使用UNIQUE约束的字段允许为NULL值. 一个表中可以允许有多个UNIQUE约束. 可以把UNIQUE约束定义在多个字段上. UNIQUE UNIQUE约束用于强制在指定字段上创建一个UNIQUE索引, UNIQUE 缺省为非聚集索引.
DROP DATABASE database_name [,...n] [例3-3] 删除数据库Teach.
DROP DATABASE Teach
3.3.6 查看数据库信息
用Enterprise Manager查看数据库信息 Sp_helpdb [[@dbname=] 'name'] 用系统存储过程显示数据库信息
同一表中不许有重名字段 "字段名" 系统默认为NULL 系统默认为 "数据类型" 字段的"长度","精度"和"小数位数" "允许空" "默认值"
用SQL命令创建数据表
CREATE TABLE <表名> (<列定义>[{,<列定义>|<表约束>}])
<列名 <数据类型 [DEFAULT] [{<列约束 列名> 数据类型 数据类型> 列约束>}] 列名 列约束
Sp_helpfile 用系统存储过程显示数据库结构 [[@filename =] 'name']
用系统存储过程显示文件信息 用系统存储过程显示文件组信息 Sp_helpfilegroup [[@filegroupname =] 'name']
EXEC Sp_helpdb Northwind EXEC Sp_helpfile Northwind EXEC Sp_helpfilegroup
[例3-5] 建立一个S表,对SNo字段进行NOT NULL约束.
CREATE TABLE S ( SNo CHAR(6) CONSTRAINT S_Cons NOT NULL, SN VARCHAR(8), Sex CHAR(2), Age INT, Dept VARCHAR(20))
UNIQUE约束(惟一约束)
3.4 创建与使用数据表
3.4.1 数据类型
整数数据 bigint,int,smallint,tinyint , , ,
精确数值
numeric和decimal 和
近似浮点数值
float和real 和
日期时间数据
datetime与smalldatetime 与
字符串数据
char,varchar,text , ,
3.2.1 SQL Server 2000的主要 组 功 能 组件 件
企业管理器 查询分析器 服务管理器 管理所有的数据库系统工作和服务器工作 执行Transact-SQL命令等SQL脚本程序 启动,暂停或停止SQL Server的四种服务 客户端网络实用工具 配置客户端的连接,测定网络库的版本信息以及 设定本地数据库的相关选项 服务器网络实用工具 配置服务器端的连接,测定网络库的版本信 导入和导出数据 在IIS中配置SQL XML支持 事件探查器 联机丛书 在OLE DB数据源之间复制数据 在运行IIS的计算机上定义,注册虚拟目录,并在 虚拟目录和SQL Server实例之间创建关联 监视SQL Server 数据库系统引擎事件 查询信息
Unicode字符串数据 字符串数据 二进制数据
nchar,nvarchar与ntext , 与
binary,varbinary,image , ,
货币数据
money与smallmoney 与
标记数据
timestamp和uniqueidentifier 和
3.4.2 创建数据表
相关属性定义
用Enterprise Manager创建数据表
NULL/NOT NULL UNIQUE PRIMARY KEY FOREIGN KEY CHECK
NULL/NOT NULL约束
NULL表示"不知道","不确定"或"没有数据"的意 思 主键列不允许出现空值 [CONSTRAINT <约束名> ][NULL|NOT NULL]
可省略约束名称 : SNo CHAR(6) NOT NULL
SQL
视图 1
视图 2
外模式
基本表
基本表
基本表
基本表
模式
存储文件 1
存储文件 2
内模式
SQL语言支持的关系数据库的三级模式结构 语言支持的关系数据库的三级模式结构
3.1.3 SQL语言的主要特点
SQL语言是一种非过程语言 SQL语言是一种面向集合的语言 SQL语言既是自含式语言,又是嵌入式语言
SQL语言是类似于英语的自然语言,简洁易用
CREATE DATABASE Teach ON ( NAME=Teach_Data, FILENAME='D:\TeachData.mdf', SIZE=10, MAXSIZE=50, FILEGROWTH=5) LOG ON ( NAME=Teach_Log, FILENAME='D:\TeachLog.ldf', SIZE=5, MAXSIZE=25, FILEGROWTH=5)
CREATE DATABASE database_name [ ON [ < filespec > [ ,...n ] ] [ , < filegroup > [ ,...n ] ] ] [ LOG ON { < filespec > [ ,...n ] } ] [ COLLATE collation_name ] [ FOR LOAD | FOR ATTACH ]
3.1.2 SQL语言的基本概念
基本表(Base Table)
一个关系对应一个基本表 一个或多个基本表对应一个存储文件
视图(View)
无数据, 无数据,只有定义
视图是从一个或几个基本表导出的表,是一个虚拟的 表
S(SNo,SN,Sex,Age,Dept) Sex='男' 男 S_Male(SNo,SN,Age,Dept) 在数据库中只存有 S_Male的定义,数 的定义, 的定义 据仍在S表中 据仍在 表中
[例3-1] 用SQL命令创建一 个教学数据库Teach,数 据文件的逻辑名称为 Teach_Data,数据文件物 理地存放在D:盘的根目 录下,文件名为 TeachData.mdf,数据文 件的初始存储空间大小为 10MB,最大存储空间为 50MB,存储空间自动增长 量为5MB;日志文件的逻 辑名称为Teach_Log,日 志文件物理地存放在D: 盘的根目录下,文件名为 TeachLog.ldf,初始存储 空间大小为10MB,最大存 储空间为25MB,存储空间 自动增长量为5MB.
[例3-4] 用SQL命令建立一个学生表S.
CREATE TABLE S ( SNo CHAR(6), SN VARCHAR(8), Sex CHAR(2) DEFAULT '男', Age INT, Dept VARCHAR(20))
缺省值为" 缺省值为"男"
3.4.3 定义数据表的约束 SQL Server的数据完整性机制 的数据完整性机制
3.2.2 企业管理器 由Enterprise Manager产生的SQL脚本是一个后缀名
文本文件
为.sql的文件 企业管理器的管理作
管理数据库 管理数据库对象 管理备份 管理复制 管理登录和许可 管理SQL Server Agent 管理 管理SQL Server Mail 管理
3.2.3 查询分析器
文件组
文件组(File Group)是将多个数据文件集合起来形 成的一个整体 主要文件组+次要文件组 一个数据文件只能存在于一个文件组中,一个文件组 也只能被一个数据库使用 日志文件不分组,它不能属于任何文件组
3.3.1 SQL 系统 Server的系统数据库
Master 系 统 默 认 数 据 库 Msdb Tempdb数据库 数据库 , 系统的 的数据 的 Model 数 系统 系统 的 SQL Server 系统数据库 数据库的 数据库 Tempdb数 数 数据 Model数据库 数据库 据库的 Model数据库的 数据库的 库 的
3.1 SQL语言的基本概念与特点
3.1.1 SQL语言的发展及标准化
SQL语言的发展
SEQUEL SQL 大型数据库 Sybase INFORMIX SQL Server Oracle DB2 INGRES ---------------小型数据库 FoxPro Access
Chamberlin
使用查询分析器的熟练程度是衡量一个 SQL Server用户水平的标准.
3.3 创建与使用数据库
数据库 可有多个 只有一 存放数据库数据和数据库对象的文件 个 数据文件1 数据文件 … … 数据文件n 数据文件 事务日志文件 记录数据库更新情况,扩展名为 记录数据库更新情况,扩展名为.ldf 当数据库破坏时可以用事务日志还原数据 库内容 主要数据文件(.mdf ) +次要数据文件 次要数据文件(.ndf ) 主要数据文件 次要数据文件
相关文档
最新文档