网络数据库
SQL Server 2000
第1章 数据库入门
1.2 数据库模型
1.2.1 关系模型(P5)
* 关系数据库:以关系(二维表)表示数据与数据之间的联系。
1.3 MS SQL Server 介绍(P6)
* Transact-SQL 语句在服务器和客户机之间传送请求。
* 关键词:insert delete update select
* 数据库的基本结构
表、记录、字段、关系、索引、视图(与真实表相同的虚拟表)。
* 浏览器/服务器(B/S)模式
前端 浏览器(Browser) 用动态服务器网页(ASP) 设计图形用户界面(GUI)。 |
后端 服务器(Server) 用SQL Server 作数据库引擎, 存储用户通过网页输入和提交的数据, 提供用户查询所需的数据。 |
客户端 浏览器 Windows98 |
HTTP Request 请求 ——————→ ←—————— HTTP Response 响应 |
Web 服务器 Windows2000 Server 版 IIS5.0 ASP |
ODBC ——————→ ←—————— SQL 查询结果 |
SQL Server 2000 版 数据库 服务器 |
1.5 MS SQL 的客户工具和使用程序(P7)
* 开始 ==》程序 ==》Microsoft SQL Server 2000 ==》
Client Network Utility 客户机网络连接工具
Enterprise Manager 企业管理器
Import and Export Data 数据导入与导出
Query Analyzer 查询分析器
Server Manager 服务管理器
1.5.1 Client Network Utility 客户机网络连接工具(P8)
安装通信协议,如 TCP/IP,
Named Pipes 命名管道 \\fsxss\pipe\sql\query
1.5.2 Enterprise Manager 企业管理器(P9)
MMC(MS Management Console)管理控制台程序
1.5.3 Query Analyzer 查询分析器(P10)
* SQL(Structure Query Language):结构化查询语言。
用 SQL 语言查询、添加、修改或者删除记录,创建数据库、数据表。
* 查询分析器用于编辑 Transact-SQL 语句。
1.5.6 Server Manager 服务管理器(P14)
启动、停止和暂停 MS SQL Server。
习题1(记录到 P17)
* 使用域用户账户有网络访问权。
* 混合认证模式:
允许使用 Windows NT 认证模式和 SQL Serve 认证模式。
2.3.2 系统数据库和样本数据库(P28)
* 系统数据库:Master(主数据库) Model(模板库)
Msdb Tempdb(临时数据库表、变量)
* 样本数据库:Pubs Northwind
2.4 注册和配置服务器(P31)
* Win98 上运行SQL Server 2000 桌面版时使用混合模式,
Windows 身份验证和 SQL Server 身份验证。
* SQL Server 2000企业管理器窗口
Win
2000 资源管理器窗口 |
Win
2000 Server IIS Web 服务器树窗口 |
SQL
2000 Server 树窗口 |
桌面
我的电脑 A:软驱 C:硬盘 D:光驱 Internet Explorer 网上邻居 |
IIS
Web 服务器
fsx 主机 Web_zd 站点 FTP_zd 站点 wssd_zd 站点 yjwd 文件夹 txsj 文件夹 |
Console Root
控制台 MS SQL Server 服务器 SQL Server Group 服务器组 wltd 网络天地服务器 Databases 数据库 wssdk 网上书店库 Tables 表 |
操作 | 查看 | Tools | New Database | New Login | New Job |
树 | Tables 21Items | ||||
Console Root
控制台 MS SQL Server 服务器 SQL Server Group 服务器组 wltd 网络天地服务器 Databases 数据库 wssdk 网上书店库 Tables 表 |
sysfiles(系统文件)
sysindexes(系统索引) sysproperties(系统属性) systypes(系统类型) tsjlb(图书记录表) |
2.4.1 注册服务器(P31)
企业管理器的[树]窗口中展开Console Root(控制台根目录)
服务器端:右击SQL服务器—创建新SQL服务器组;
客户端:右击SQL服务器组—注册新SQL服务器:
如,wltd —添加— SQL Serve 认证模式(在Win98上运行)—
选择自动登录 SQL Serve 账号—输入用户 ID 和密码—
Login Name:sa(系统管理员System Adiministrators)
Password:空
添加到已经存在的 SQL Serve 服务器组。
2.4.2 配置服务器(P35)
* 企业管理器窗口中设置混合模式的操作步骤
展开服务组—右击服务器,如,网络天地服务器 wltd—属性—
安全卡(Security)—安全区(Security)
选择 SQL Server and Windows 2000,
审核级(Audit)选择不审核(None)—
确定后,重新启动 SQL Server,使设置的安全模式生效。
* 修改 SQL Server 注册属性
展开服务组—右击服务器,如,网络天地服务器 wltd—
Edit SQL Server Registration Properties
Login Name:sa(系统管理员System Adiministrators)
Password:空
* 修改账户 sa 的密码:
在企业管理器“树”窗口,逐级展开服务器组、
服务器(如 网络天地服务器 wltd)、安全(Security)、
登录(Logins);
右击账户 sa —密码:空。
* 增加登录账户
企业管理器工具栏—新登录账户—
用户:xss
密码:abc123
数据库:wssdk
习题2(记录到 P40)
* SQL(Structure Query Language):结构化查询语言。
* SQL 语言的功能:
查找返回记录。
创建、更改和删除数据库中的表、字段和索引等。
对表进行统计,如求和、均值。
3.2 数据类型(P44)
字符型:VarChar[(n)],<=255个字符。
数值型:Int,SmallInt,Money(8位),SmallMoney(4位)。
3.4 SELECT 语句(P55)
查询数据库中已有的数据
SELECT 语句的基本语法格式:
SELECT 字段列表
[INTO 检索结果存储的新表]
FROM 查询的表名
[WHERE 搜索条件]
[GROUP BY 分组表达式]
[HAVIGN 搜索表达式]
[ORDER BY 排序表达式[ASC|DESC] (P63)
* 按要求查询图书记录表
按图书名称、作者、出版社、图书类别
进行分类查询、综合查询和按关键字搜索。
图书记录表
Access wssdk2k.rar
图书号 | 图书名称 | 作者 | 出版社 | 图书定价 | 图书类别 |
1 | “神舟”五号清华群英谱 | 编写组 | 北京清华大学 | 33.00 | 新书介绍 |
2 | 纳米激光测尺在清华诞生 | 宋晓梦 | 北京清华大学 | 33.00 | 新书介绍 |
3 | 人类基因组测序 | 编写组 | 北京清华大学 | 33.00 | 新书介绍 |
4 | “舒氏区”学习记忆功能 | 编写组 | 北京清华大学 | 33.00 | 新书介绍 |
5 | 计算机网络应用 | 吕晓阳 | 广东科技 | 28.00 | 大专教材 |
6 | 电脑网络操作 | 编写组 | 北京理工大学 | 24.00 | 大专教材 |
7 | 网络数据库 开发实战 | 刘洪海 | 博嘉科技 | 40.00 | 大专教材 |
8 | SQL Server 2000 教程 | 曹军生 | 北京理工大学 | 29.00 | 大专教材 |
9 | SQL Server 7.0 教程 | 赵增敏等 | 电子工业 | 24.00 | 大专教材 |
10 | Access 2000 数据库 | 能力考试 | 辽宁人民 | 25.00 | 大专教材 |
27 | 计算机专业英语 | 杨永田 | 哈尔滨工大 | 12.00 | 大专教材 |
28 | 计算机应用基础 | 编写组 | 中央电视大学 | 61.50 | 大专教材 |
29 | 计算机信息技术基础 | 许骏 | 科学出版社 | 30.00 | 大专教材 |
30 | 计算机图形学基础 | 陈传波等 | 电子工业 | 28.00 | 大专教材 |
31 | 计算机辅助设计 ACAD | 教材编委 | 北京希望电子 | 32.00 | 大专教材 |
32 | 精通中文版 ACAD | 郭玲文等 | 北京清华大学 | 49.00 | 大专教材 |
33 | 计算机工具软件使用教程 | 刘瑞新等 | 机械工业 | 20.00 | 大专教材 |
34 | 宇宙银河系星座 | 编写组 | 科学出版社 | 33.00 | 科学技术 |
35 | 太阳系 | 编写组 | 科学出版社 | 33.00 | 科学技术 |
36 | 航天航空技术 | 编写组 | 科学出版社 | 33.00 | 科学技术 |
37 | 人造地球卫星 | 编写组 | 科学出版社 | 33.00 | 科学技术 |
38 | 宇宙飞船 | 编写组 | 科学出版社 | 33.00 | 科学技术 |
39 | 航天飞机 | 编写组 | 科学出版社 | 33.00 | 科学技术 |
3.4.1 选择列(P56)
1.选择所有列
select * from 图书记录表
所有列
2.选择特定列
select 图书号,图书名称,图书定价,图书类别 from 图书记录表
3.计算列
select 图书名称,'会员价'=0.9*图书定价 from 图书记录表
4.改变列标题:新列名=旧列名(P58)
select tsmc=图书名称,tsdj=图书定价 from 图书记录表
3.4.3 WHERE 子句(P59)
列出“大专教材”类的图书(准确查询用“=”号)。
select 图书号,图书名称,图书定价 from 图书记录表 Where 图书类别='大专教材'
列名 表源 条件
1.比较运算符
列出不是“大专教材”类的图书。
select * from 图书记录表 Where 图书类别<>'大专教材'
2.范围运算符
列出“图书定价”在30元~35元之间的图书。
select * from 图书记录表 Where 图书定价 between $30 and $35
3.列表运算符
列出“大专教材”和“科学技术”类的图书。
select * from 图书记录表 Where 图书类别 in('大专教材','科学技术')
4.匹配符(P62)
用类似 like 和“%”匹配任意字符,进行模糊查询。
如,查找图书名称为'程序设计'结尾的图书。
select * from 图书记录表 Where 图书名称 like '%计%'
select * from 图书记录表 Where 图书名称 like '%程序设计'
select * from 图书记录表 Where 图书名称 like '计算机%'
select * from 图书记录表 Where 出版社 like '%大学'
* SQL Server 2000中,使用选择 SELECT 语句查询检索数据
工具栏—显示/隐藏SQL窗格,[!]运行SQL。
3.4.4 ORDER BY 子句(P63)
* ORDER BY 对查询结果进行排序
select 图书号,图书名称,图书定价
from 图书记录表
Where 图书类别='大专教材'
order by 图书定价 desc,图书号 asc
对查找出的'大专教材'类图书,按定价降序,图书号升序进行排序。
3.4.5 GROUP BY 和 HAVING 子句(P64)
* GROUP BY 分组汇总数据
统计各类图书数量和。
select 图书类别,'图书数量合计'=SUM(图书数量)
from 图书记录表
group by 图书类别
1.HAVING 子句(P66)
按图书类别分组统计平均定价大于 ¥35元的图书。
select 图书类别,'图书平均价'=AVG(图书定价)
from 图书记录表
group by 图书类别
having AVG(图书定价)>$35
3.4.6 COMPUTE 和 COMPUTE BY 子句(P69)
对数据库进行统计,生成汇总行,增加各列汇总行。
3.5 批处理和流程控制语言
3.5.3 流程控制语言
2.RETURN 语句(P76)
3.CASE 表达式:多条件分支选择。(P77)
4.BEGIN...END 语句封装多条 SQL 语句。(P78)
5.IF...ELSE 语句:条件判断语句。(P79)
6.WHILE、BREAK 和 CONTINUE 语句
7.GOTO 语句:无条件转移,可以作批处理的结束语句。
8.WAITFOR 语句:等待语句。(P80)
习题3(记录到 P80)
网络天地书店
1 通过 SQL Server 企业管理器建立网络数据库
1-1 创建网上书店数据库 F:/wltd828/mdb/ wssdk_Data.MDF(P102)
图书记录表栏目:图书号、图书名称、作者、出版社、图书定价、
图书数量、图书类别。
要多收集一些有图书封面的书,图书记录要求100条以上,
方便检验搜索查询、分类查询和糊模查询功能。
用户资料表栏目:用户号、用户姓名、购书密码、联系地址、
联系电话、邮政编码、电子邮件。
站点计数表栏目:计数字段初值为0。
企业管理器的[树]窗口中逐级创建服务器组、服务器、数据库,
新建数据库和表。
1-2 图像储存
例如:图书封面字段 ==》储存文件标识,
如 wlsjk.jpg 与插入图像文件的网页同一文件夹时,可省略路径。
或直接储存为 Binary Image 格式。
1-3 网页中调用数据库中的图书封面的文件标识实现插入图书封面
img src="<%=trim(rs("图书封面"))%>"
1-4 数据库导出(P204)
SQL数据库 wssdk_Data.MDF 转换成 Access 数据库 wssdk.mdb
中国学生的 ASP 空间只支持 Access 数据库。
可以直接使用 Access 创建数据库。
2 用 ASP 和 SQL 语言查询访问数据库
显示当前日期时间和记录站点访问的计数器,
主页要存储为 index.asp。
功能实现要点:
用ASP 组件显示当前日期时间。
用 ASP 和 SQL 语言查询访问数据库 wssdk.mdb。
创建数据库连接、记录集对象;打开记录表;
输出计数表中计数字段的值;关闭数据库连接、关闭记录集对象。
<%
'定义日期时间
today=formatdatetime(now(),1)&formatdatetime(now(),3)
'1.创建连接对象 Connection
set cn=Server.CreateObject("ADODB.Connection")
'虚拟主机OLEDB:注意中国学生网要求的数据库引擎(驱动 OLEDB 连接),
'修改“/会员名/路径/数据库名”,要与实际对应。
cn.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;
DATA SOURCE="&Server.MapPath ("/fsxss/mdb/wssdk.mdb")
'a.自管主机软件要求 Windows Server 2000 服务版,IIS 管理发布 Web 站点,
支持 ASP 脚本运行。
'b.自管主机OLEDB:提供程序MICROSOFT.JET.OLEDB.4.0,
数据源 DATA SOURCE:影射站点根目录(如,E:/网站测试/)后的路径。
如 Server.MapPath ("/mdb/wssdk.mdb")。
'cn.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;
DATA SOURCE="&Server.MapPath ("/mdb/wssdk.mdb")
'cn.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;
DATA SOURCE=E:/E 网站编辑/mdb/wssdk.mdb"
'c.自管主机ODBC:无DNS、Access 数据库驱动程序,
数据库查询 DBQ 路径要对应本机硬盘物理路径。
'cn.open "Driver={Microsoft Access Driver(*.mdb)};
DBQ=E:/网站编辑/mdb/wssdk.mdb"
'd.自管主机ODBC:无DNS、SQL 数据库驱动程序。
'cn.Open"Driver={SQL Server};Database=wssdk;
Server=Local Server;UID=sa;PWD="
'数据库驱动为 SQL Server;数据库名,如 wssdk;
'服务器名,如 Local Server,要与实际对应;
'用户身份可用系统管理员 sa;密码为空。
'2.创建记录集对象 Recordset
set rs=Server.CreateObject("ADODB.Recordset")
'3.打开计数表,向计数字段赋值,用Update写入(P55,P109)
rs.open"select 计数 from 计数表",cn,adOpenDynamic,3
rs("计数")=rs("计数")+1
rs.Update
rs.close
rs.open"select 计数 from 计数表",cn,3
%>
<p>
日期时间:<%response.write today %>
计数器:<% =rs("计数")%>
<%
rs.close
%>
</p>
3.搜索书名、按出版社和图书类别查询
3-1 搜索书名
以书名的部分字进行模糊查询(P62),
如 “计算机”、“程序设计”。
功能实现要点:
3-1-1 表单提交搜索书名的关键字数据“sssm”
<form method="get" action="clss.asp">
<input type="text" name="sssm" size=10>
<input type="submit" name="submit" value="搜索书名">
</form>
3-1-2 激活处理搜索的程序 clss.asp
使用表单提交的数据(搜索书名 sssm)对变量赋值。
打开图书记录表,
从图书名称字段搜索出符合搜索关键字的图书名称,
找出相应的图书记录。
dim sssm
sssm=request.querystring("sssm")
rs.open"select * from 图书记录表 where 图书名称 like '%"&sssm&"%'",cn,3
3-2 按出版社查询
以出版社的部分字进行模糊查询(P62),
如 “科学”、“工业”、“大学”、“人民”。
rs.open"select * from 图书记录表 where 出版社 like '%科学%'",cn,3
rs.open"select * from 图书记录表 where 出版社 like '%工业'",cn,3
rs.open"select * from 图书记录表 where 出版社 like '%大学'",cn,3
rs.open"select * from 图书记录表 where 出版社 like '人民%'",cn,3
3-3 按图书类别查询
以图书类别的全部字作准确查询(P59),查找各种类型的图书。
图书类别:新书介绍、大专教材、科学技术、社会科学、文化教育。
(计算机、大专教材、职工培训、文化教育、
电子电工、汽车制造、机械建筑、经济管理)
rs.open"select * from 图书记录表 where 图书类别='新书介绍'",cn,3
rs.open"select * from 图书记录表 where 图书类别='大专教材'",cn,3
rs.open"select * from 图书记录表 where 图书类别='科学技术'",cn,3
rs.open"select * from 图书记录表 where 图书类别='社会科学'",cn,3
rs.open"select * from 图书记录表 where 图书类别='文化教育'",cn,3
3-4 插入各种形式的图书封面
扫描的图书封面、Java 语言图形程序设计的图书封面、
Flash 制作的图书封面。
3-5 查询图书名称、出版社或图书类别,分别输出图书记录(P59)
功能实现要点:
创建数据库连接、记录集对象;打开图书记录表;
循环输出记录中各字段
(图书号、图书名称、出版社、作者、图书定价、图书类别)的值;
关闭数据库连接、关闭记录集对象。
'1 创建数据库连接对象 Connection
set cn=Server.CreateObject("ADODB.Connection")
cn.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE="&server.MapPath("/fsxss/mdb/wssdk.mdb")
'2 创建记录集Recordset对象rs
set rs=Server.CreateObject("ADODB.Recordset")
'3 打开图书记录表
rs.open"select * from 图书记录表 where 图书类别='大专教材'",cn,3
'rs 对象捆梆 cn 链接数据库,选择 3号游标,图书类别 8个字符。
'4 循环输出记录
do while not rs.eof
=rs("图书号")
=rs("图书名称")
=rs("图书定价")
=rs("图书类别")
'5 移到下一记录
if not rs.eof then
rs.movenext
loop
'6 关闭 Recordset 对象
rs.close
'7 关闭连接,并释放 Recordset 对象
cn.close
set rs=nothing
4.1 数据库中的对象
4.1.1 事务日志(P81)
事务日志:存放未写到数据库中的数据库事务。
包括处理事务的过程,用户操作数据库信息前后的映像。
4.3 数据库和事务日志管理
4.3.1 创建数据库及事务日志(P83)
* 样板数据库 Model 的对象:
数据库用户:dbo(Database Owner)拥有者
数据库角色:10种
表:17个表
视图:20个视图
1.使用企业管理器创建数据库和事务日志
1)双击任务栏 SQL服务器—
服务器,如,网络天地服务器 wltd—启动。
2)开始—>程序—>Microsoft SQL Server 2000 ->
企业管理器(Enterprise Manager)。
3)企业管理器的[树]窗口
企业管理器的[树]窗口中逐级创建服务器组、服务器、数据库。
* 展开网络天地服务器 wltd
* 右击 Databases—新数据库:
名称:如,网上书店库 wssdk
数据文件:wssdk_Data.MDF
日志文件:wssdk_Log.LDF
存放路径:F:\
网站编辑\mdb\初始容量:1MB
2.使用 CREATE DATABASE 创建数据库和事务日志(P85)
Create 语句
语法:
CREATE DATABASE database_name
…………
3.使用 Database creation 创建数据库和事务日志(P87)
企业管理器 ==》工具 ==》向导 ==》数据库 ==》创建数据库向导
4.3.3 压缩数据库(P93)
使用企业管理器压缩数据库
展开树形目录中的[Databases]节点;
右击数据库的图标—所有任务—Shrink Database;
压缩数据库:
Shrink Database-truncate tralling free space
from the end of files
4.3.
4 附加数据库SQL Server 企业管理器—右键“数据库”—附加数据库—
选择文件,如“E:\本地站点\mdb\wssdk_Data.mdf”
习题4(记录到 P99)