文档库 最新最全的文档下载
当前位置:文档库 › 参考答案数据库技术实验指导

参考答案数据库技术实验指导

参考答案数据库技术实验指导
参考答案数据库技术实验指导

《数据库技术(SQL Server 2005)》实验指导 / 学年第学期

姓名:______________

学号:______________

班级:______________

指导教师:______________

计算机科学与工程学院

2010

目录

目录 2

实验一 SQl Server 2005常用工具使用 3

实验二数据的简单查询 6

实验三数据的复杂查询12

实验四管理数据库和表错误!未定义书签。实验五操纵表中数据错误!未定义书签。实验六 SQL Server程序设计错误!未定义书签。实验七存储过程和自定义函数错误!未定义书签。实验八视图和索引错误!未定义书签。实验九触发器错误!未定义书签。实验十数据库设计错误!未定义书签。

实验一SQl Server 2005常用工具使用

一、实验目的

1 . 了解SQl Server 2005包含的主要组件及其功能;

2 .了解SQl Server 2005的配置管理工具;

3 .熟悉SQl Server管理工作室的界面及基本使用方法;

4 .了解联机帮助文档的使用,熟悉示例数据库adventureworks;

5. 掌握select语句实现简单查询。

二、实验预习

1 .SQL Server 各组件的主要功能是什么?

2、如何安装SQL Server 2005?

三、实验内容和要求

1 .通过“开始”→“程序”→Microsoft SQL Server2005→“配置工具”→SQL Server Configuration Manager,打开“SQL Server配置管理工具”窗口,选择SQL Server 服务.并且通过该窗口“启动”和“停止” SQL Server 服务。

2 .通过“开始”→“程序”→Microsoft SQL Server2005→“SQL Server Management Studio”打开管理工作室窗口。

3 .打开本地服务器的属性对话框,在常规中查看以下信息:产品名称、主机操作系统、产品的版本、操作平台、主机内存等.

4 .利用管理工作室访问系统自带的示例数据库adventureworks。

( l )登录到管理工作室。

( 2 )在管理工作室的树形目录中找到adventureworks数据库并展开,查看该数据库的所有

对象,如表、视图,存储过程、默认和规则等。

( 3 )选择adventureworks数据库的“表”选项,在右窗格中将列出adventureworks 数据库的所有表(包括系统表和用户表),选择用户表humanresources.employee,右击,弹出快捷菜单,从中选择“打开表”菜单项,打开humanresources.employee表,查看其内容并作出解释。

5 .利用查询编辑器访问adventureworks 数据库的表。

( l )通过在管理工作室中,选择“新建查询”工具项,运行SQL Server 查询编辑器。( 2 )在管理工作室窗口中,选择更改数据库下拉框的下拉按钮,选择要操作的adventureworks 数据库。

( 3 )在查询编辑器的编辑窗口中,输人以下代码:

SELECT * FROM humanresources.employee

( 4 )选择查询编辑器的“查询”→“分析”菜单项,或者单击常用工具栏上“分析查询”按钮√,查询编辑器将对输入的代码进行语法分析,并由消息窗格给出分析结果报告.( 5 )选择查询编辑器的“查询”→“执行”菜单项,或者单击常用工其栏上“执行查询”按钮√。SQL Server 将编译窗口中的代码.并在结果窗格中显示查询结果,写出记录数。

6、通过在管理工作室中,选择“帮助”→“目录”菜单项打开联机帮助文档,找到范例数据库部分,了解范例数据库详细介绍及其数据字典。

7、利用SELECT语句完成以下简单查询。(执行操作后,将实现功能的语句写在空白处)1)显示所有顾客的详情。

SELECT * FROM Sales.Customer

2)简单查询:以下面的格式显示所有信用卡的ID, type, number和expiry year:

SELECT 'Credit Card ID' = CreditCardID, 'Credit Card Type' = CardType,'Credit Card Number' = CardNumber, 'Expiry Year' = ExpYear from Sales.CreditCard 3)查询公司所有员工的详细信息。

SELECT * from humanresource.employee

4)以下面格式查询部门的相关信息。

SELECT DepartmentID as ‘部门编号’,Name as ‘部门名称’,GroupName as ‘部门所属组名’from humanresources.department

5)显示所有产品的名称,产品标识号,尺寸,重量,开始销售日期,停止销售日期。

SELECT Name,ProductNumber,Size,Weight,SellStartDate,SellEndDate from production.product

6)显示所有采购运输的编号、发货商名称、最低的运费。

SELECT ShipMethodID,Name,ShipBase from Purchasing.ShipMethod

四、实验小结:

五、评阅成绩

实验二数据的简单查询

一、实验目的

1.掌握使用SELECT 语句的where子句进行条件查询;

2.掌握使用ORDER BY 从句来以特定的顺序显示数据的方法;

3.掌握使用TOP、DISTINCT的使用;

4.掌握SQL Server 2005常用系统函数的使用。

5.掌握各种集合函数(聚合函数)的使用;

6.掌握产生各种分类汇总结果的方法。

二、实验预习

二、实验预习

1、查询语句SELECT 的基本格式:

2、SQL Server 2005 提供了哪些系统函数供使用?

3、SQL Server中的集合函数及其各自的功能?

4、GROUP BY, COMPUTE子句的功能?

三、实验内容和要求:(执行操作后,将实现功能的语句写在空白处)

(一、)带条件查询

1、显示所有区域ID为4的顾客ID和顾客帐号。

SELECT CustomerID, AccountNumber FROM Sales.Customer WHERE TerritoryID = 4

2、 显示超过2,000的销售订单的详情。(一个订单的总花费)

SELECT * FROM Sales.SalesOrderDetail WHERE LineTotal > 2000.00

3、 显示产品名为'Cable Lock'的销售订单的详情。(提示: Cable Lock 的产品ID 是843。)

SELECT * FROM Sales.SalesOrderDetail WHERE ProductID=843

4、 显示所有在2004年6月6日下的订单。

SELECT * FROM Sales.SalesOrderHeader WHERE OrderDate = '06-06-2004'

5、以下面的格式显示所有订单的报告。

提示: Total Cost = Order Quantity * Unit Price ,不允许使用LineTotal 列。

SELECT 'Order ID' = SalesOrderID, 'Order Quantity' = OrderQty, 'Unit Price' = UnitPrice, 'Total Cost' = OrderQty * UnitPrice FROM Sales.SalesOrderDetail

6、 显示所有价格在2,000 到2,100之间的销售订单的列表。(包括2000和2100)

SELECT * FROM Sales.SalesOrderDetail WHERE LineTotal BETWEEN 2000 AND 2100

7、 显示区域ID 是1的地区的名称、国家地区代码和本年度的销售额。

SELECT Name, CountryRegionCode, SalesYTD FROM Sales.SalesTerritory WHERE TerritoryID = 1

8、 显示税收总额超过10,000的订单的详情。

SELECT * FROM Sales.SalesOrderHeader WHERE TaxAmt >= 10000

9、 显示加拿大、法国和德国的销售地区详情。

SELECT * FROM Sales. SalesTerritory WHERE Name IN ('Canada', 'France', 'Germany')

10、使用下面的格式,产生一个包括生活地区ID 是2或4的地区的销售人员ID 的报告。

SELECT 'Sales Person ID'=SalesPersonID, 'Territory ID' = TerritoryID FROM Sales.SalesTerritoryHistory WHERE TerritoryID = 2 OR TerritoryID = 4

11、显示在2006年失效的Vista 信用卡的详情。

SELECT * FROM Sales.CreditCard WHERE CardType = 'Vista' AND ExpYear = '2006'

12、显示所有在

2004年7月12日交货的订单的详情。

SELECT * FROM Sales.SalesOrderHeader WHERE ShipDate > '2004-07-12'

13、以下面的格式,显示在

2001年7月1日下的客户付费额超过10,000的订单。

SELECT 'Order Number' = SalesOrderID, 'Order Date' = OrderDate, Status, 'Total Cost' = TotalDue

FROM Sales.SalesOrderHeader WHERE OrderDate = '07-01-2001' AND TotalDue > 10000

14、显示顾客在线下的订单的详情。

SELECT * FROM Sales.SalesOrderHeader WHERE OnlineOrderFlag = 0

15、查找产品名以e结束,倒数第二个字符为c或者d的所有产品的详细信息。

SELECT * FROM Production.Product WHERE Name like ‘%[c,d]e’

16、显示所有中间名非空的人的详细信息。

SELECT * FROM Person.Contact WHERE MiddleName Is Not NULL

17、以下面的格式,显示所有销售订单的销售ID和总应到款。要求按订单价格从高到低排序。

SELECT 'Order ID' = SalesOrderID, 'Total Due' = TotalDue FROM

Sales.SalesOrderHeader ORDER BY TotalDue DESC

18、按本年度销售额降序显示销售人员ID,区域ID和本年度销售额。

SELECT SalesPersonID,TerritoryID,SalesQuota FROM Sales.SalesPerson order by SalesQuota desc

19、显示订单总额小于2,000的销售订单订单ID和总税收。数据应该以订单总额升序显示。

SELECT SalesOrderID, TaxAmt FROM Sales.SalesOrderHeader WHERE TotalDue < 2000 ORDER BY TotalDue ASC

20、显示订单总额大于1000小于2000且税额最少的10个订单的详细信息。

SELECT Top 10 * FROM Sales.SalesOrderHeader WHERE TotalDue < 2000 And

TotalDue>1000 ORDER BY TotalDue ASC

21、显示销售构架中货币名字中含有'Dollar'的所有货币的详情。

SELECT * FROM Sales.Currency WHERE Name like ‘%Dollar%’

22、显示所有名字以'N'开始的销售地区的详细信息。

SELECT * FROM Sales.SalesTerriory WHERE Name like ‘N%’

23、显示SalesPersonID, TerritoryID和指定了销售计划额的销售人员的销售计划额。数据应该以下面的格式显示。

SELECT 'Sales Person ID' = SalesPersonID, 'TerritoryID'= TerritoryID, 'Sales Quota' = SalesQuota FROM Sales.SalesPerson WHERE SalesQuota IS NOT NULL

24、显示用于购买产品的信用卡的不同类型。(类型重复的不显示)

SELECT DISTINCT CardType FROM Sales.CreditCard

(二)系统函数的使用

25、以下面的格式显示所有的订单。(期中Week Day为星期)

SELECT 'Order Number' = SalesOrderID, 'Total Due' = TotalDue,

'Day of Order' = DATEPART(dd, OrderDate), 'Week Day' = DATEPART(dw, OrderDate) FROM Sales.SalesOrderHeader

26、显示2001年订单总额最高的5个订单的订单ID。

SELECT TOP 5 SalesOrderID FROM Sales.SalesOrderHeader

WHERE Datepart(yyyy,OrderDate) = 2001 ORDER BY TotalDue DESC

27、显示所有商店的顾客ID,商店名和销售人员的ID,期中商店名只显示前15个字符。

SELECT CustomerID, Name = LEFT(Name, 15), SalesPersonID FROM Sales.Store

28、显示来自SalesOrderDetai表的SalesOrderID, OrderQty、UnitPrice和自定义编号,自定义编号的要求为表中一个相同的单价需要用一个值标识,且所有编号是连续的。

SELECT SalesOrderID, OrderQty,UnitPrice, DENSE_RANK() OVER(ORDER BY UnitPrice ASC)AS RANK FROM Sales.SalesOrderDetail

29、显示来自员工表的员工EmployeeID 、Year(受聘年份)、Month(受聘月份)。

SELECT EmployeeID, Month = DATEPART (mm, HireDate), Year = DATEPART (yy, HireDate) FROM HumanResources.Employee

30、显示颜色不为空的所有产品的产品代号,产品名称和颜色,其中产品名称用大写显示,颜色用小写显示。

SELECT ProductNumber UPPER(Name) Lower(Color) FROM Production.Product Where Color Is Not NULL

31、假设销售订单的有效天数为20天,输出订单号,订单创建的日期,以及订单的有效时间截止日期。

SELECT SalesOrderNumber,OrderDate,’有效时间截止日期’=DateAdd(dd,20,orderdate) FROM Sales.SalesOrderHeader

32、显示采购订单的订单号,发货日期,发货日期到当前日期的相隔天数,年数。

SELECT PurchaseOrderID,ShipDate,’相隔天数’=DateDiff(dd,shipdate,getdate()),’相隔年数’=DateDiff(yy,shipdate,getdate()) FROM

Purchasing.PurchaseOrderHeader

33、显示对产品重量有描述的产品的产品代号,产品名称和产品重量,其中重量四舍五入到保留一位小数。

SELECT ProductNumber,Name round(Weight,1) FROM Production.Product Where Weight Is Not NULL

SELECT

‘Initial’=left(Firstname,1)+’.’+left(Lastname)+’.’,FirstName,LastName FROM Person.Contact

SELECT SalesOrderID,OrderDate,’Quarter’=Datepart(qq,orderdate) FROM

Sales.SalesOrderHeader

36、查询销售订单号与订单日期,订单日期以2001.01.08的格式显示

SELECT SalesOrderID,’OrderDate’=Convert(char(10),orderdate,102) FROM

Sales.SalesOrderHeader

37、下面SQL语句将输出什么?

1)、select substring('I am a fresher',3,10)

am a fresh

2)、select upper('John Smith'),lower('John Smith')

JOHN SMITH john smith

3)、select replicate('good!',3)

good!good!good!

4)、select 2,3,power(2,3)

2 3 8

5)、select round(668.678,2)

668.680

(三)分组与统计

38、从Sales.SalesOrderHeader表中显示所有销售订单的总值。

SELECT SUM(TotalDue) FROM Sales.SalesOrderHeader

39、下面写出的代码能否输出每个订单的总订单值?如不能请写出正确的语句。

SELECT SalesOrderID,ProductID,SUM(LineTotal) FROM Sales.SalesOrderDetail GROUP BY SalesOrderID

SELECT SalesOrderID,ProductID,SUM(LineTotal) FROM Sales.SalesOrderDetail GROUP BY SalesOrderID,ProductID

40、在Sales.SalesOrderDetail表中,一个订单可以包含多个产品。显示产品ID和单个产品总价超过10000的总价。

SELECT ProductID, Sum(LineTotal) as Total FROM Sales.SalesOrderDetail GROUP BY ProductID HAVING Sum(LineTotal) > 10000

41、下面包含COMPUTE BY从句的SQL查询是否有错误?如有错请修改。

SELECT ProductID, LineTotal AS ‘Total’ FROM Sales.SalesOrderDetail COMPUTE SUM(LineTotal) BY ProductID

SELECT ProductID, LineTotal AS ‘Total’ FROM Sales.SalesOrderDetail Order by

Productid,Linetotal COMPUTE SUM(LineTotal) BY ProductID

42、显示每天的订单款总和,并按该总和降序排列结果集。

SELECT OrderDate, SUM(TotalDue) FROM Sales.SalesOrderHeader GROUP BY

OrderDate order by SUM(TotalDue) DESC

43、在销售架构中,显示774号产品和777号产品的明细和总单价及总数,最后计算这两种产品的总单价和总数。

SELECT ProductID, UnitPrice, LineTotal FROM Sales.SalesOrderDetail

WHERE ProductID IN (777, 774) ORDER BY ProductID, UnitPrice, LineTotal COMPUTE SUM(UnitPrice), SUM(LineTotal) BY ProductID COMPUTE Sum(UnitPrice), Sum(LineTotal)

44、在Sales.SalesOrderDetail中,查询订单总值大于5,000的订单,显示销售订单ID、订单总值LineTotal的最大值、订单总值的最小值。

SELECT SalesOrderID, MIN(LineTotal) as ‘Minimum’ , MAX(LineTotal) as

‘Maximum’ FROM Sales.SalesOrderDetail WHERE LineTotal > 5000 GROUP BY

SalesOrderID

45、在Sales.SalesOrderDetail中,以下面的格式显示销售订单ID、基于销售订单的商品总值

SELECT SalesOrderID, 'Average Value' = Avg(LineTotal) FROM

Sales.SalesOrderDetail GROUP BY SalesOrderID HAVING AVG(LineTotal) > 5000 46、在Sales.SalesOrderDetail表中,显示总销售量大于1000000以及产品平均定购数量小于

SELECT ProductID, sum(linetotal),AVG(OrderQty) FROM Sales.SalesOrderDetail GROUP BY ProductID HAVING Sum(LineTotal) > 1000000 and Avg(OrderQty)<3 四、实验小结:

五、评阅成绩

实验三数据的复杂查询

一、实验目的

1.掌握各种连接的使用,包括内连接、左外右外完全外连接等;

2.掌握各种子查询的使用,包括:in子查询,exists子查询,all、any子查询,集合函数子查询,嵌套子查询,关联子查询。

二、实验预习

1、内连接、左外、右外、完全外连接各自有什么特点?

答:特点:

(1)内连接:就是显示符合查询条件的记录。

(2)左外连接:就是除了显示符合查询条件的记录数外,还要增添左侧表中不符合查询条件的记录数。

(3)右外连接:就是除了显示符合查询条件的记录数外,还要增添右侧表中不符合查询条件的记录数。

(4)全外连接是除了要显示符合查询条件的记录,还要显示出各自表中不符合查询条件的记录数。

2、EXISTS 子查询与其他方式的子查询有什么不同之处?

答:不同之处:

(1)EXISTS 关键字前面没有列名、常量或其他表达式。

(2)由 EXISTS 引入的子查询的选择列表通常几乎都是由星号 (*) 组成。由于只是测试是否存在符合子查询中指定条件的行,因此不必列出列名。

三、实验内容和要求:(执行操作后,将实现功能的语句写在空白处)

1、以下面的格式,查询所有销售人员的销售人员ID,地区ID和地区名称。

SELECT 'Person ID'= SalesPersonID, 'Territory ID'= s.TerritoryID, Name FROM Sales.SalesPerson s JOIN Sales.SalesTerritory st on s.TerritoryID =

st.TerritoryID

2、以下面的格式查询销售订单ID,产品ID和订单日期。

SELECT 'Order ID' = h.SalesOrderID, 'Product ID'= d.ProductID,

'Order Date' = OrderDate FROM Sales.SalesOrderHeader h join

Sales.SalesOrderDetail d ON h.SalesOrderID = d.SalesOrderID

3、写出一个显示所有销售人员ID和地区名称的查询。如果销售人员不属于任何地区,显示NULL。

SELECT 'Sales Person ID' = SalesPersonID, 'Territory Name' = Name FROM Sales.SalesPerson LEFT OUTER JOIN Sales.SalesTerritory ON

SalesPerson.TerritoryID = SalesTerritory.TerritoryID

4、以下面的格式,写出一个显示销售订单ID,地区名称,订单月份和年份的查询。

SELECT SalesOrderID, 'Territory Name' = Name, Month = Datename(mm, OrderDate), Year = Datename(yy, OrderDate) FROM Sales.SalesOrderHeader s JOIN

Sales.SalesTerritory t on s.TerritoryID = t.TerritoryID

5、以下面的格式显示订单号,订单区域名称和每个订单时所属的季度。

SELECT SalesOrderID, 'Territory Name' = Name, OrderDate, Quarter = datepart (qq, OrderDate) FROM Sales.SalesOrderHeader s JOIN Sales.SalesTerritory t on s.TerritoryID = t.TerritoryID

6、写出一个查询显示舍入到整数值的所有销售订单的总应收款。而且,显示销售订单ID

和支付的信用卡的类型。

SELECT SalesOrderID, CardType, 'Total Due' = Round (TotalDue, 0) FROM

Sales.SalesOrderHeader s join Sales.CreditCard c on s.CreditCardID =

c.CreditCardID

7、写一个查询,显示有‘Vista’信用卡的顾客的联系人ID(SalesOrderHeader)

SELECT ContactID, CardType FROM Sales.ContactCreditCard JOIN Sales.CreditCard ON ContactCreditCard.CreditCardID = CreditCard.CreditCardID WHERE CardType = 'Vista'

8、写一个查询显示Sales架构中所有国家地区代码、货币代号、相应的销售地区ID和销售区域名称。查询内容要求如下:

SELECT s.Countryregioncode, currencycode, TerritoryID,Name FROM

Sales.Countryregioncurrency s left JOIN Sales.SalesTerritory st on s.

Countryregioncode = st. Countryregioncode

9、写一个查询,显示销售订单的订单日期和订单ID和地区名称。订单日期应该以dd/mm/yyyy 格式显示。

SELECT SalesOrderID, Name, Convert(Char(10), OrderDate, 103) as ‘Char Date’ FROM Sales.SalesOrderHeader s JOIN Sales.SalesTerritory t on t.TerritoryID = s.TerritoryID

10、写一个查询,以显示订单ID和订单的地区名称,其中订单的月份是5月,年份是2004。

SELECT SalesOrderID, Name FROM Sales.SalesOrderHeader s

JOIN Sales.SalesTerritory t ON s.TerritoryID = t.TerritoryID WHERE DATENAME(mm, OrderDate) = 'May' and DATEPART (yy, OrderDate)=2004

(以下各题利用子查询实现)

11、写一个查询以显示来自西北(northeast)地区的订单的销售订单ID。

SELECT SalesOrderID FROM Sales.SalesOrderHeader where TerritoryID = (SELECT TerritoryID FROM Sales.SalesTerritory WHERE Name = 'Northeast')

12、显示订单总值大于所有订单总值的平均值的销售订单ID。

SELECT SalesOrderID, TotalDue FROM Sales.SalesOrderHeader WHERE TotalDue > (SELECT Avg(TotalDue) FROM Sales.SalesOrderHeader)

13、写一个查询显示订单ID,订单详情ID和订单产品总值,要求单产品总值大于订单ID 为43662的订单产品总值中的最大值。

SELECT SalesOrderID, SalesOrderDetailID, LineTotal FROM

Sales.SalesOrderDetail WHERE LineTotal >ALL

(SELECT LineTotal FROM Sales.SalesOrderDetail WHERE SalesOrderID = 43662)

14、写出一个查询,显示订单ID和在2007年过期的信用卡的ID。

SELECT SalesOrderID, CreditCardID FROM Sales.SalesOrderHeader

WHERE CreditCardID IN (SELECT CreditCardID FROM Sales.CreditCard WHERE ExpYear = 2007)

15、写出一个查询以显示名为Catherine(Firstname) Abel(LastName)的信用卡号。

SELECT CardNumber FROM Sales.CreditCard Where CreditCardID =

(SELECT CreditCardID FROM Sales.ContactCreditCard Where

ContactID = (SELECT ContactID FROM Person.Contact Where FirstName = 'Catherine' and LastName = 'Abel'))

16、写一个查询以显示那些没有折扣('No Discount')的订单详情。

SELECT * FROM Sales.SalesOrderDetail where SpecialOfferID = (SELECT

SpecialOfferID FROM Sales.SpecialOffer WHERE Type = 'No Discount')

17、写出一个查询以显示订单ID和订单详情ID订单产品总值(lineTotal),要求订单产品总值超过该订单ID产品总值的平均值。

SELECT SalesOrderDetailID, SalesOrderID, LineTotal FROM

Sales.SalesOrderDetail s1 WHERE s1.LineTotal > (SELECT AVG(s2.LineTotal) FROM Sales.SalesOrderDetail s2 Where s1.SalesOrderID = s2.SalesOrderID)

18、写一个查询以显示通过信用卡类型为Superior卡支付的订单的销售订单ID。

SELECT SalesOrderID FROM Sales.SalesOrderHeader Where

CreditCardID in (SELECT CreditCardID FROM Sales.CreditCard Where CardType = 'SuperiorCard')

19、写一个查询以显示澳元(Australian Dollar)的平均汇率,其中现金汇率日期(CurrencyRateDate)是2004年7月1日。

SELECT AverageRate FROM Sales.CurrencyRate

Where CurrencyRateDate = '2004-07-01' and ToCurrencyCode = (SELECT CurrencyCode FROM Sales.Currency Where Name = 'Australian Dollar')

空间分析实验指导书

空间分析实验指导书 黎华 武汉理工大学资环学院 2011年9月

目录 实验一、市区择房分析 (2) 实验二、最短路径分析 (3) 实验三、寻找最佳路径 (5) 实验四(综合实验一)、学校选址规划 (7)

实验一、市区择房分析 1、背景 如何找到环境好、购物方便、小孩上学方便的居住区地段是购房者最关心的问题,因此购房者就需要从总体上对商品房的信息进行研究分析,选择最适宜的购房地段。 2、数据 ●城市市区交通网络图(network.shp) ●商业中心分布图(marketplace.shp) ●名牌高中分布图(school.shp) ●名胜古迹分布图(famous place.shp) 3、步骤 1)所寻找的区域应该满足以下条件 ●离主要交通要道200米之外,以减少噪音污染 ●在商业中心的服务范围内,服务范围以商业中心规模的大小(属性字段YUZHI)来 确定 ●距名牌高中在750米内,以便小孩上学便捷 ●距名胜古迹500米内,环境幽雅 2)对每个条件进行缓冲区分析,得到各个条件所对应的区域 3)运用空间叠置分析对上述4个图层进行叠加,得到适合的购房地段

实验二、最短路径分析 1.背景:在现实生活中寻求最短,最快,提高效率有着重大意义,而交通网络中要素的设置如权重的改变和阻强的设置对最短路径的选择也有着很大的影响,研究这些因子的改变究竟对最短路径能造成多大的影响,对于现实也有一定的指导意义。 2.目的:学会用ArcGIS9 进行各种类型的最短路径分析,了解内在的运算机理。 3.数据:试验数据位于\Chp7\Ex2,请将练习拷贝至E:\Chp7\Ex2\ 一个GeoDatabase 地理数据库:City.mdb,内含有城市交通网、超市分布图,家庭住址以及网络关系。 4.要求:应该能够给出到达指定目的地的路径选择方案根据不同的权重要求得到不同的最佳路径,并给出路径的长度;根据需求找出最近的设施的路径,这里是以超市为例。 (1)在网络中指定一个超市,要求分别求出在距离、时间限制上从家到超市的最佳路径。 (2)给定访问顺序,按要求找出从家经逐个地点达到目的地的最佳路径。 5.操作步骤: 首先打开ArcMap选择E:\Chp7\Ex2\city.mdb再双击后选择将整个要素数据集city加载进来。然后将place 点状要素以HOME 字段属性值进行符号化,1 值是家,0 值是超市,(1)无权重最佳路径的选择 1)在设施网络分析工具条上,点选旗标和障碍工具板下拉箭头,将旗标放在家和想要去的超市点上。 2)确认在Analysis 下拉菜单中的Options 按钮打开的Analysis Options 对话框中的weight 和weight filter 标签项全部是none,这样使得进行的最短路径分析是完全按照这个网络自身的长短来确定的。 3)点选追踪工作(Track task)下拉菜单选择寻找路径(find path)。单击solve 键,则最短路径将显示出来,这条路径的总成本将显示在状态列。 (2)加权最佳路径选择 1)在设施网络分析工具条上,点选旗标和障碍工具板下拉箭头,将旗标放在家和想去的某个超市点上。 2)选择Analysis 下拉菜单,选择Option按钮,打开Analysis Option对话框,选择Weight 标签页,在边的权重(edge weight)上,全部选择长度(length)权重属性。 3)点选追踪工作(Track task)下拉菜单选择寻找路径(find path)。单击solve键,则以长度为比重为基础的最短路径将显示出来,这条路径的总成本将显示在状态列。 4)上述是通过距离的远近选择而得到的最佳路径,而不同类型的道路由于道路车流量的问题,有时候要选择时间较短的路径,同样可以利用网络分析进行获得最佳路径。 这里的时间属性是在建网之前,通过各个道路的类型(主干道,次要道等)来给定速度属性,然后通过距离和速度的商值确定的,并将其作为属性设定于每个道路上,这里没有考虑红灯问题以及其他因素,而是一种理想情况,不过可以将其他的要素可以逐渐加入来完善。 (3)按要求和顺序逐个对目的点的路径的实现 1)在设施网络分析工具条上,点选旗标和障碍工具板下拉箭头,将旗标按照车辆访问的顺序逐个放在点上。

#(16课时)数据库实验指导书

《数据库原理及使用》实验指导书 (适用于计算机科学和技术、软件工程专业) 热风器4 计算机科学和技术学院 2011年12月 ⒈本课程的教学目的和要求 数据库系统产生于20世纪60年代末。30多年来,数据库技术得到迅速发展,已形成较为完整的理论体系和一大批实用系统,现已成为计算机软件领域的一个重要分支。数据库原理是计算科学和技术专业重要的专业课程。 本课程实验教学的目的和任务是使学生通过实践环节深入理解和掌握课堂教学内容,使学生得到数据库使用的基本训练,提高其解决实际问题的能力。 ⒉实验教学的主要内容 数据库、基本表、视图、索引的建立和数据的更新;关系数据库的查询,包括单表查询、连接查询、嵌套查询等;数据库系统的实现技术,包括事务的概念及并发控制、恢复、完整性和安全性实现机制;简单数据库使用系统的设计实现。 ⒊实验教学重点 本课程的实验教学重点包括: ⑴数据库、基本表、视图、索引的建立和数据的更新; ⑵SQL的数据查询; ⑶恢复、完整性和安全性实现机制; ⑷简单数据库使用系统的设计实现; 4教材的选用 萨师煊,王珊.数据库系统概论(第四版).北京:高等教育出版社.2006,5 实验1创建数据库(2学时) 实验目的 1.学会数据表的创建; 2.加深对表间关系的理解; 3.理解数据库中数据的简单查询方法和使用。 实验内容 一、给定一个实际问题,实际使用问题的模式设计中至少要包括3个基本表。使用问题是供应商给工程供应零件(课本P74)。 1.按照下面的要求建立数据库: 创建一个数据库,数据库名称可以自己命名,其包含一个主数据文件和一个事务日志文件。注意主数据文件和事务日志文件的逻辑名和操作系统文件名,初始容量大小为5MB,

数据库系统实验报告 实验三 数据控制(安全性)..

《数据库系统概论》实验报告 题目:实验三数据控制(安全性) 班级姓名学号日期2014年6月6日 一、实验目的 1.通过SQL对数据库进行安全性控制 2.完成教材中例题的上机练习 二、实验平台 微软SQL Server 2000或以上版本。 对于SQL Server 2000,使用查询分析器运行SQL语句,对于SQL Server 2005以上的版本,使用SQL Server Management Studio运行SQL语句。 三、实验内容和要求 使用SQL对数据进行安全性控制,包括授权和权力回收。 操作完成后,查看授权用户是否真正具有所授予的数据操作权利,在权力回收操作之后,用户是否确实丧失了所回收的数据操作权力。 在前几次实验中已经建立了实验数据库,继续在此数据库上进行实验所要求的各项操作。认真填写实验报告,记录所有的实验用例。 四、实验步骤 1.以管理员sa登录数据库,新建DB数据库,然后运行如下SQL语句,创建 我们前几次实验所建立的表。 CREATE TABLE course ( Cno char(4) NOT NULL, Cname char(40) DEFAULT NULL, Cpno char(4) DEFAULT NULL, Ccredit smallint DEFAULT NULL, PRIMARY KEY (Cno) ) ; -- -- 转存表中的数据'course' -- INSERT INTO course (Cno, Cname, Cpno, Ccredit) V ALUES ('1', '数据库', '5', 4); INSERT INTO course (Cno, Cname, Cpno, Ccredit) V ALUES ('2', '数学', NULL, 2);

福建工程学院《实验指导书(数据库系统原理及应用)》

数据库系统原理 实验指导书 (本科)

目录 实验一数据定义语言 (1) 实验二SQL Sever中的单表查询 (3) 实验三SQL Serve中的连接查询 (4) 实验四SQL Serve的数据更新、视图 (5) 实验五数据控制(完整性与安全性) (7) 实验六语法元素与流程控制 (9) 实验七存储过程与用户自定义函数 (11) 实验八触发器 (12)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\S tuDat.mdf”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10% 2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S:S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录; (4)将年龄的数据类型改为smallint; (5)向S表添加“入学时间(comedate)”列,其数据类型为日期型(datetime); (6)对表S,按年龄降序建索引(索引名为inxage); (7)删除S表的inxage索引; (8)删除S表; 5.在StuDB数据库中, (1)按照《数据库系统概论》(第四版)P82页的学生-课程数据库创建STUDENT、COURSE 和SC三张表,每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。 并输入相关数据。 (2)将StuDB数据库分离,在D盘下创建DB文件夹下找到StuDB数据库的两个文件,进行备份,后面的实验要用到这个数据库。 6.(课外)按照《数据库系统概论》(第四版)P74页习题5的SPJ数据库。创建SPJ数据 库,并在其中创建S、P、J和SPJ四张表。每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。要作好备份以便后面的实验使用该数据库数据。 三、实验要求:

实验指导四空间大数据处理与地图投影

实验四空间数据处理与地图投影 一、实验目的 1.掌握空间数据处理(融合、拼接、剪切、交叉、合并)的基本方法,原理。 2.掌握地图投影变换的基本原理与方法。 3.掌握ArcGIS中投影的应用及投影变换的方法、技术,同时了解地图投影及其变换在实际中的应用。 二、实验准备 1.软件准备:ArcGIS 10.2 2.数据准备: (1)stationsll.shp(美国爱达荷州轮廓图) (2)idll.shp(美国爱达荷州滑雪场资料) 以上两个数据是以十进制表示经纬度数值的shapefile (3)snow.txt(美国爱达荷州40个滑雪场的经纬度值) (4)stations.shp,一个已投影的shapefile,用于检验习作2的投影结果 (5)idoutl.shp,基于爱达荷横轴墨卡托坐标系的爱达荷州轮廓图,用于检验习作3投影的正确性 三、实验容与步骤 1.空间数据处理 1.1 裁剪要素 ?在ArcMap中,添加数据“县界.shp”、“Clip.shp”(Clip 中有四个实体) ?开始编辑,激活Clip图层。选中Clip图层中的一个实体(注意不要选中“县界”中的实体!)

图4-1 编辑Clip ?点击按钮,打开ArcToolBox; ?选择“Analysis Tools->Extract”,双击“Clip”,弹出窗口剪切窗口,指定输入实体为“县界”,剪切实体为“Clip”(必须为多边形实体),并指定输出实体类路径及名称,这里请命名为“县界_Clip1” 如图4-5; 图4-2 工具箱

图4-3 剪切窗口 ?依次选中Clip主题中其它三个实体,重复以上的操作步骤,完成操作后将得到共四个图层——“县界_Clip1”,“县界_Clip2”,“县界_Clip3”,“县界_Clip4”); ?操作完成后,一定要“Save Editors”。 图4-4 生成四个剪切图层

数据库系统概论实验指导(第六版)

数据库系统概论实验指导 (第六版) 计算机学院 2010/09

改版履历

目录 目录 (3) 1.实验概要 (4) 1.1.实验说明 (4) 1.2.实验环境和配置 (4) 1.3.上机要求 (4) 2.实验1:数据库/表的基本操作和表级约束 (5) 2.1.目的和要求 (5) 2.2.实验准备 (5) 2.3.实验内容 (5) 3.实验2:库级约束和基本表的数据操作 (8) 3.1.目的和要求 (8) 3.2.实验准备 (8) 3.3.实验内容 (8) 4.实验3:视图操作和安全性控制 (10) 4.1.目的和要求 (10) 4.2.实验准备 (10) 4.3.实验内容 (10) 5.实验4:存储过程/触发器/ODBC数据库编程 (12) 5.1.目的与要求 (12) 5.2.实验准备 (12) 5.3.实验内容 (12) 6.实验5:数据库综合实验 (14) 6.1.目的与要求 (14) 6.2.实验准备 (14) 6.3.实验内容 (14) 5.3.1.题目一:零件交易中心管理系统 (15) 5.3.2.题目二:图书管理系统 (15) 5.3.3.题目三:民航订票管理系统 (15) 5.3.4.题目四:学生学籍管理系统 (15) 5.3.5.题目五:车站售票管理系统 (16) 5.3.6.题目六:企业人事管理系统 (16) 5.3.7.题目七:电话交费管理系统 (16) 5.3.8.题目八:医药销售管理系统 (16) 7.附录:实验报告格式 (17)

1.实验概要 1.1.实验说明 内容:本课程实验分5次完成,每次完成一部分。具体内容参考本指导的后半部分。 成绩:每次实验100分,最后取所有实验的平均分作为实验的总成绩。评分标准如下: 上述每一项按照百分制给出分值,最后按照比率计算每次实验的最终成绩。 实验报告 每次实验需提交电子版的实验报告(最后一次实验需提交设计文档,源程序等相关资料)。每次实验结束时,将写好的实验报告,提交给各班辅导老师。如果确有困难没有完成的情况下,课后自己完成之后提交到辅导老师的邮箱里。由辅导老师根据课堂上机实验检查状况和实验报告的内容给出每次实验的成绩。 实验报告的内容包括:实验内容、实验步骤、程序源码、运行结果(可以是程序的输出,也可以是运行画面的抓屏,抓屏图片要尽可能的小,否则文件太大)。每份实验报告是一个WORD文档。实验报告命名规则如下:DBx(实验次数)_XXXXXX(学号)_姓名例如:052978的学生的第一次实验报告文件名: DB1_052978_李宁注意:请每个人保存好自己的实验报告的电子版,直到该门课考试成绩公布之后。 1.2.实验环境和配置 SQL Server 2008(Microsoft SQL Server 2008 Express With Advance Service) 1.3.上机要求 ●上机之前,请做好预习,需要写一个简单的预习报告,格式不限。 ●严格遵守实验室的各项规定。

数据库系统设计实验报告

数据库系统设计实验报告 ――教务管理系统 学院:计算机科学与技术 专业:软件工程 班级: 学号: 姓名: 指导老师:

一、概述 项目背景:数据库课程设计 系统名称:教务管理系统 开发环境:SQL Server 2008 二、需求分析 1、系统的概述 ?一个学校由很多个学院组成,每个学院有多个专业,每个专业有1个或 者多个班级。一个学生只属于1个班级,学生有姓名、学号、性别、身 份证号、入学时间等属性。 ?每个专业的每个年级都有对应的教学计划。教学计划指定了这个专业这 个年级的某门课程在那个学期上,学分、学时是多少。每个学院都设置 有1个教务秘书,这些信息都由教务秘书进行输入。每个院系的课程都 有自己的唯一编码,比如计算机系上的C语言,和电子系上的C语言, 虽然都是同一门课,但是编码是不同的。但是同一个院系中的相同的课 程,课程代码是唯一的。比如计算机学院的07计算机软件专业和计算机 学院的07计算机科学专业都有C语言课程,这两门课程的课程代码是相 同的。 ?教务秘书在每个学期的中间时刻,为下一个学期进行排课,排课的内容 根据教学计划,比如08计算机软件专业的学生,在2009-2010年第2 学期上的课程,可以通过教学计划得知要上什么课程,然后对这些课程 安排上课教师(比如陈越)、上课时间(比如星期2,第1-2节)和地点 (理工楼234),有的课程是单周上,有的双周,也有是每周都上的。 ?在每个学期期末,学生登录到网站上选择下一个学期需要上的课,选择 的时刻,可以选择是否需要教材,如果某门课程的人数选满了,则不能 给任何学生选择了。 ?学生根据选择的课程进行上课,参加考试。每个老师可以用自己的用户 名和密码登陆网站,选择这个学期自己所教的课程(一个老师可以上多 个班级的课程),输入这个班级的成绩,成绩分为期末考试成绩、期中考 试成绩、平时成绩、实验成绩以及总评成绩。这些成绩都需要进行存储。 ?为了保证安全性,老师输入的成绩并不是直接放到最终的成绩表中,而 是放在一个临时的表中,只有当教务秘书审核过后,才导入到最终的成 绩表中。

ACCESS2010数据库技术实验指导书3

《ACCESS2010数据库技术及应用》 实验指导(3) 学号: 姓名: 班级: 专业:

实验三窗体 实验类型:验证性实验课时: 4 学时指导教师: 时间:201 年月日课次:第节教学周次:第周 一、实验目的 1. 掌握窗体创建的方法 2. 掌握向窗体中添加控件的方法 3. 掌握窗体的常用属性和常用控件属性的设置 二、实验内容和要求 1. 创建窗体 2. 修改窗体,添加控件,设置窗体及常用控件属性 三、实验步骤 案例一:创建窗体 1.使用“窗体”按钮创建“成绩”窗体。 操作步骤如下: (1)打开“教学管理.accdb”数据库,在导航窗格中,选择作为窗体的数据源“教师”表,在功能区“创建”选项卡的“窗体”组,单击“窗体”按钮,窗体立即创建完成,并以布局视图显示,如图3-1所示。 (2)在快捷工具栏,单击“保存”按钮,在弹出的“另存为”对话框中输入窗体的名称“教师”,然后单击“确定”按钮。 图3-1布局视图 2.使用“自动创建窗体”方式 要求:在“教学管理.accdb”数据库中创建一个“纵栏式”窗体,用于显示“教师”表中的信息。 操作步骤: (1)打开“教学管理.accdb”数据库,在导航窗格中,选择作为窗体的数据源“教师”表,在功能区“创建”选项卡的“窗体”组,单击“窗体向导”按钮。如图3-2所示。 (2)打开“请确定窗体上使用哪些字”段对话框中,如图3-3 所示。在“表和查询”下拉列表中光图3-2窗体向导按钮

标已经定位在所学要的数据源“教师”表,单击按钮,把该表中全部字段送到“选定字段”窗格中,单击下一步按钮。 (3)在打开“请确定窗体上使用哪些字”段对话框中,选择“纵栏式”,如图3-4所示。单击下一步按钮。 (4)在打开“请确定窗体上使用哪些字”段对话框中,输入窗体标题“教师”,选取默认设置:“打开窗体查看或输入信息”,单击“完成”按钮,如图3-5所示。 (5)这时打开窗体视图,看到了所创建窗体的效果,如图3-6所示。 图3-3“请确定窗体上使用哪些字”段对话框 图3-4“请确定窗体使用的布局”段对话框中

大型数据库系统(SQL Server 2005)--实验指导讲义

实验一SQL Server 2005数据库服务器界面使用及数据库原理知 识的应用 1.实验目的 (1)通过使用SQL Server 2005的控制界面感受SQL Server 2005。 (2)熟悉SQL Server 2005所需的软、硬件要求。 (3)熟悉SQL Server 2005支持的身份验证种类。 (4)掌握SQL Server 2005服务的几种启动方法。 (5)掌握SQL Server Management Studio的常规使用。 (6)掌握关系数据库的逻辑设计方法——E-R图。 2.实验准备 (1)了解SQL Server Management Studio的常规使用。 (2)了解SQL Server 2005所需的软、硬件要求。 (3)了解SQL Server 2005支持的身份验证种类。 (4)了解SQL Server 2005服务的几种启动方法。 (5)了解关系数据库的逻辑设计方法——E-R图。 3.实验内容 (1)分别使用“Windows身份验证模式”和“SQL Server和Windows身份验证模式”登录SQL Server 2005集成控制台。 (2)利用SQL Server Configuration Manager配置SQL Server 2005服务器。 (3)利用SQL Server 2005创建的默认帐户,通过注册服务器向导首次注册服务器。 (4)试着创建一些由SQL Server 2005验证的账户,删除第一次注册的服务器后用新建的账户来注册服务器。 (5)为某一个数据库服务器指定服务器别名,然后通过服务器别名注册该数据库服务器。 (6)熟悉和学习使用SQL Server Management Studio。 (7)设计E-R图。参照书上19页的优化模式,要求注明实体的主码、联系的类型和主码。

数据库实训指导书

《数据库》实训计划 课程名称:数据库原理及应用 一、课程简介 《数据库原理及应用》课程是我院计算机科学与技术专业的一门重要专业课程,是一门理论性和实践性都很强的面向实际应用的课程,它是计算机科学技术中发展最快的领域之一。可以说数据库技术渗透到了工农业生产、商业、行政管理、科学研究、教育、工程技术和国防军事等各行各业。因此本课程的教学既要向学生传授一定的数据库理论基础知识,又要培养学生运用数据库理论知识和数据库技术解决实际应用问题的能力。 二.课程实验 实验题目 1.学籍管理系统 2.图书档案管理系统 3.企业人事管理系统 4.工资管理系统 5.用户和权限管理系统。 6.仓库管理系统。 7.企业进销存管理系统。 8、超市管理系统 10、酒店管理系统 11、旅游管理系统 12、高考成绩信息管理系统

13、医院信息管理系统 14、银行计算机储蓄系统 15、 ICU监护系统 16、可自拟题目 任选一题按照下列实验纲要进行设计。 实验纲要 1、实验目标 本课程实验教学的目的和任务是使学生通过实践环节深入理解和掌握课堂教学内容,使学生得到数据库应用的基本训练,提高其解决实际问题的能力。 2、实验内容 数据库的模式设计;数据库、表、视图、索引的建立与数据的更新;关系数据库的查询,包括嵌套查询、连接查询等;数据库系统的实现技术,包括事务的概念及并发控制、恢复、完整性和安全性实现机制;简单数据库应用系统的设计实现。 给定一实际问题,让学生自己完成数据库模式的设计,包括各表的结构(属性名、类型、约束等)及表之间的关系,在选定的DBMS上建立数据库表。用SQL命令和可视化环境分别建立数据库表,体会两种方式的特点。 3、实验教学重点 本课程的实验教学重点包括:⑴数据库的模式设计;⑵SQL的数据查询; ⑶并发控制、恢复、完整性和安全性实现机制;⑷简单数据库应用系统的设计实现; 实验1:数据库的创建

oracle数据库实验指导书

计算机科学学院《ORACLE数据库》实验指导书

《ORACLE数据库》实验指导书 实验一Oracle数据库安装配置以及基本工具的使用 1.实验的基本内容 实验室中oracle数据库安装后某些服务是关闭的(为了不影响其他课程的使用),所以在进入数据库前需要对oracle进行配置: (1)启动oracle OraHomeTNSLISTENER 和oracleserviceORACLE 两个服务 (2)修改listener.ora 和tnsnames.ora 两个文件的内容 (3)以用户名:system ,口令:11111 以“独立登录”的方式进入oracle 数据库系统 (4)熟悉数据库中可用的工具。 2.实验的基本要求 (1)掌握Oracle11g的配置以及登录过程。 (2)熟悉系统的实验环境。 3.实验的基本仪器设备和耗材 计算机 4.实验步骤 (1) 查看设置的IP地址是否与本机上的IP地址一致。若不一致则修改为本机IP地址。 (2) 启动oracle OraHomeTNSLISTENER 和oracleserviceORACLE 两个服务 控制面板/性能与维护/管理工具/服务/ oracle OraHomeTNSLISTENER(右击/启动)。 控制面板/性能与维护/管理工具/服务/ oracleserviceORACLE(右击/启动) (3) 修改listener.ora 和tnsnames.ora 两个文件的内容 D:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN (用记事本方式打开),将HOST=“…..”内容修改为本机的IP地址,保存退出。 D:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN (用记事本方式打开),将HOST=“…..”内容修改为本机的IP地址,保存退出。 (4) 启动oracle 数据库

数据库系统实验

实验指导书 班级:090402 姓名:郑锦坤

序言 数据库是数据管理的最新技术,是计算机科学的重要分支。通过学习重点让大家掌握数据库技术的程序设计思想和方法,学习开发管理系统的技术,并结合PB8.0以上版本和SQL SERVER 2000以上版本上机环境编程测试。 为了达到这个目的,这里安排五个实验单元。 实验报告的内容 1.题目 描述每个实验的内容是什么。 2.需求分析 用E-R图描述数据库的模式设计及每个关系模式的建立;描述数据字典及程序数据流;每个事件、函数或过程 的头和规格说明; 3.源程序清单和结果 源程序要加注释,要有测试数据及结果。

实验1:学习SQL 语句与SQL SERVER的数据库环境(4学时) 本次实验的主要目的在于学会使用SQL SERVER环境建 库的方法,学会SQL SERVER企业管理器和查询分析器的使用,通过数据库操纵环境,了解库的建立、表的建立、数据库 的查询实现方法。实验数据如下: Student SC

实验报告 1 日期: 一.SQL语句实验题目: 1.建立课程表 2.建立学生表 3.建立选课表 4.查询所有学生的详细信息

SELECT Student.SCLASS, Student.SNO,Student.SNAME, Student.SSEX, Student.SAGE , Student.SDEPT,https://www.wendangku.net/doc/2a12999484.html,O,SC.GRADE,https://www.wendangku.net/doc/2a12999484.html,AME,Course.CPNO,Course. CCREDIT FROM Course,Student,SC WHERE SC.SCLASS=Student.SCLASS AND SC.SNO=Student.SNO AND https://www.wendangku.net/doc/2a12999484.html,O=https://www.wendangku.net/doc/2a12999484.html,O 5.查询1班的学生号学及姓名 SELECT SNO,SNAME FROM Student WHERE SCLASS='1' 6.查询‘刘晨’的出生年 7.查询姓‘刘’的学生的详细情况

2016数据库原理实验指导书

信息工程学院 数据库原理实验指导书二零一六年五月

目录 实验一SQL SERVER 2005的安装与启动 (1) 实验二数据库的操作 (11) 实验三SQL SERVER2005查询编辑器 (23) 实验四SQL语言的DDL (31) 实验五SQL语言的DML初步 (34) 实验六DML的数据查询 (36) 实验七数据库综合设计 (40)

实验一SQL Server 2005的安装与启动 一、实验目的 SQL Server 2005是Mircosoft公司推出的关系型网络数据库管理系统,是一个逐步成长起来的大型数据库管理系统。 本次实验了解SQL Server 2005的安装过程,了解SQL Server 2005的启动,熟悉SQL Server 2005软件环境。学会安装SQL Server 2005。 二、实验内容 1.安装SQL Server 2005 (1)将SQL Server 2005(中文开发版)安装盘插入光驱后,SQL Server 2005安装盘将自动启动安装程序;或手动执行光盘根 目录下的Autorun.exe文件,这两种方法都可进行SQL Server 2005的安装。出现如下画面。 (2)选中“运行SQL Server Client 安装向导”进行安装,弹出【最终用户许可协议】界面。

(3)选中【我接受许可条款和条件】选项,单击【下一步】按钮,进入【安装必备组件】界面。 (4)组件安装完成后,单击【下一步】按钮,进入【欢迎使用Microsoft SQL Server 安装向导】界面。

(5)单击【下一步】按钮,进入【系统配置检查】界面。检查完毕将显示检查结果。 (6)检查如果没有错误,单击【下一步】按钮,进入【注册信息】界面。

《数据库系统原理》实验指导书范文

《数据库系统原理》实验指导书 计算机科学与技术与学院计算机科学与技术系 二○一二年

目录 实验一认识DBMS ..................................................................................... 错误!未定义书签。实验二交互式SQL(4小时) ................................................................. 错误!未定义书签。实验三数据库完整性(2小时) ........................................................... 错误!未定义书签。实验四数据库安全性(2小时) ........................................................... 错误!未定义书签。

实验一认识DBMS 一、实验目的 1.通过对某个商用数据库管理系统的安装使用,初步了解DBMS的工作环境和系统构架。在此推荐SQL SERVER2005。 2.熟悉DBMS的安装、配置及使用。 3.搭建今后实验的平台。 二、实验平台 操作系统:Windows XP。 数据库管理系统:SQL SERVER2005。选择安装各个数据库管理系统之前,请仔细看清硬件的配置要求。 三、实验内容和要求 1.根据安装文件的说明安装数据库管理系统。在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样的配置,对今后运行数据库管理系统会有什么影响。 2.学会启动和停止数据库服务。 在正确安装SQL SERVER2005后,SQL SERVER数据库引擎服务会在系统启动时自动启动。如果要手动地启动和停止数据库引擎服务,可以通过SQL SERVER配置管理器(SQLSERVER CONFIGURATION MANAGER)来进行管理。SQL SERVER配置管理器综合了SQLSERVER 2000中的服务管理器、服务器网络适用工具和客户端网络实用工具的功能。 打开 SQL SERVER配置管理器工具,单击“SQL SERVER2005服务”节点,其中的“SQL SERVER”服务就是我们所说的数据库引擎。与SQL SERVER 2000一样,可以通过这个配置管理器来启动、停止所安装的服务,如“SQLSERVER(MSSQLSERVER)”。 3.了解RDBMS系统的体系结构。 SQL SERVER2005是一款具有“客户机/服务器”架构的关系型数据库管理系统,它使用T-SQL语言在客户机和服务器之间传递客户机的请求和服务器的响应。 数据库体系结构:又划分为数据库逻辑结构和数据库物理结构。数据库逻辑结构主要应用于面向用户的数据组织和管理,如表、视图、存储过程和触发器、约束等。数据库物理结构主要应用于面向计算机的数据组织和管理,如数据以表文件的形式存放在硬盘上。 4.了解RDBMS的管理和使用。例如SQL SERVER Management Studio是SQL SERVER 2005种最重要的管理工具,它融合了SQL SERVER2000的查询分析器和企业管理器、OLAP分析器等多种工具的功能,为管理人员提供了一个简单的实用工具,使用这个工具既可以用图形化的方法,也可以通过编写SQL语句来实现数据库的操作。 5.初步了解RDBMS的安全性,这里主要是服务器用户的登录和服务器预定义角色。可以尝试建立一个新的登录名,赋予其数据库管理员的角色,今后的实验可以用该登录名来创建数据库用户。

数据库实验指导书

数据库实验指导书 (试用版) 二零零六年三月 目录 引言 1 一、课程实验目的和基本要求 1 二、主要实验环境 1 三、实验内容 1 实验1 数据库模式设计和数据库的建立 2 一、教学目的和要求 2 二、实验内容 2 三、实验步骤 2 四、思考与总结 3 实验2 数据库的简单查询和连接查询 4 一、教学目的和要求 4 二、实验内容 4 三、实验步骤 4 四、思考与总结 5 实验3 数据库的嵌套查询和组合统计查询 6 一、教学目的和要求 6 二、实验内容 6 三、实验步骤 6 四、思考与总结 7 实验4 视图与图表的定义及数据完整性和安全性 8 一、教学目的和要求 8 二、实验内容 8 三、实验步骤 8 四、思考与总结 9 实验5 简单应用系统的实现 10 一、教学目的和要求 10 二、实验内容 10 三、实验步骤 10 四、思考与总结 10

附录1:数据库实验报告格式 11 附录2:SQL Server 2000使用指南 12 1 SQL Server 2000简介 12 2 SQL Server 2000的版本 12 3 SQL Server 2000实用工具 12 4 创建数据库 15 5 创建和修改数据表 17 6 创建索引 22 7 存储过程 23 8 触发器 25 9 备份和恢复 27 10 用户和安全性管理 28 引言 数据库技术是一个理论和实际紧密相连的技术,上机实验是数据库课程的重要环节,它贯穿于整个―数据库阶段‖课程教学过程中。 一、课程实验目的和基本要求 上机实验是本课程必不可少的实践环节。学生应在基本掌握各知识点内容的基础上同步进行相关实验,以加深对知识的理解和掌握,达到理论指导实践,实践加深理论的理解与巩固的效果。 数据库课程上机实验的主要目标是: 通过上机操作,加深对数据库系统理论知识的理解。 通过使用具体的DBMS,了解一种实际的数据库管理系统,并掌握操作技术。 通过实际题目的上机实验,提高动手能力,提高分析问题和解决问题的能力。 实验在单人单机的环境下,在规定的时间内,由学生独立完成。出现问题时,教师要引导学生独立分析、解决,不得包办代替。 上机总学时不少于12学时。 二、主要实验环境 操作系统为Microsoft Windows 2000/XP。 数据库管理系统可以选择:(1)Microsoft SQL Server 2000标准版或企业版 (2)Microsoft Access2000 (3)金仓数据库KingbaseES。 三、实验内容 本课程实验主要包括数据库的模式设计,数据库、表、视图、索引的建立与数据的更新;关系数据库的查询,包括连接查询、嵌套查询、组合查询等;数据库系统的实现技术,包括事务的概念及并发控制、完整性和安全性实现机制;简单数据库应用系统的设计与实现。实验1 数据库模式设计和数据库的建立 一、教学目的和要求 根据一个具体应用,独自完成数据库模式的设计。 熟练使用SQL语句创建数据库、表、索引和修改表结构。 熟练使用SQL语句向数据库输入数据、修改数据和删除数据的操作。 二、实验内容 对实际应用进行数据库模式设计(至少三个基本表)。

数据库系统原理及应用实验全套

数据库系统原理及应用实验指导书 (本科) 福建工程学院计算机与信息科学系计算机软件与理论教研室 浅诺制作 2012年5月

目录 实验一数据定义语言 (1) 实验二 SQL Sever中的单表查询 (5) 实验三 SQL Serve中的连接查询 (8) 实验四 SQL Serve的数据更新、视图 (12) 实验五数据控制(完整性与安全性) (17) 实验六语法元素与流程控制 (22) 实验七存储过程与用户自定义函数 (28) 实验八触发器 (34)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10%

2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S: S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录;

数据库实验1认识数据库管理系统

《数据库技术》 实验指导书徐州师范大学计算机科学与技术学院

实验一使用数据库管理系统(2学时) 【实验目的】 1.掌握服务管理器的启动和停止方法; 2.掌握注册服务器的步骤; 3.掌握在SQL Server 2008中创建和编辑数据库; 4.掌握备份、附加和分离数据库的方法 【实验要求】 1.熟练掌握SQL Server2008数据库服务器服务启动和注册方法; 2.熟练使用Management Studio界面方式创建及编辑数据库; 3.熟练进行数据库备份、分离附加操作; 4.独立完成实验内容,并提交书面实验报告。 【实验内容】 1. 管理SQL Server 2008服务器,主要包括启动、暂停、停止和重新启动等操作; 2. 注册SQL Server 2008服务器。 3. 使用SQL Server 2008对象资源管理器和SQL语句(新建查询)两种方法,完成学生管理系统数据库的创建,修改数据库属性。 (1)创建一个数据库,要求如下。 ●数据库名“STUDENT”。 ●数据库中包含一个数据文件,逻辑文件名为student_data,磁盘文件名为 student_data.mdf,文件初始容量为10MB,最大容量为100MB,文件容量递增值为5%。 ●事务日志文件,逻辑文件名为student_log,磁盘文件名为student_log.ldf,文件初始 容量为5MB,最大容量为30MB,文件容量递增值为2MB。 (2)对该数据库做如下修改。 ●添加一个数据文件.逻辑文件名为student2_data,磁盘文件名为student2_data.ndf, 文件初始容量为5MB,最大容量为50MB,文件容量递增值为5MB。 ●将日志文件的最大容量增加为50MB.递增值改为3MB。 (3)将学生数据库更名为STU。 (4)备份STUDENT数据库。 (5)删除STUDENT数据库。 (6)还原STUDENT数据库。 4.附加给定的数据库文件并分离创建好的数据库文件。 【实验步骤】 1.管理SQL Server 2008服务器,主要包括启动、暂停、停止和重新启动等

数据库系统-实验3

实验九触发器的创建与使用 一、实验目的 本实验的目的是使学生进一步掌握SQL Server触发器的创建及使用方法,加深SQL触发器的理解。通过对数据的更新操作体会其触发器的作用。 二、实验准备 结合课堂教学内容,了解触发器的相关知识,掌握触发器的定义,理解触发器的使用方法及其特点。 三、实验要求 1. 掌握T-SQL创建触发器语句Create trigger的使用。 2. 完成所规定的触发器定义要求。 3. 通过数据查询检查触发器的使用效果。 4. 注意操作结果的截图与保存,供撰写实验报告使用。 四、实验内容 1. 在班级表class中增加班级人数(c_total)字段。 2. 为学生表(student)创建INSERT触发器t_inst_stu:新增一名学生时,若其班级编号非空,则将班级表(class)中相应班级的人数(c_total)自动加1。 3. 为学生表(student)创建DELETE触发器t_dele_stu:删除一名学生时,若其班级编号非空,则将班级表(class)中相应班级的人数(c_total)自动减1。 4. 为学生表(student)创建UPDATE触发器t_update_stu: 当某学生所在班号发生变化时(即调到另一班级后),将其原先所在班级的人数(c_total)减1,将新调入的班级班级的人数(c_total)加1。 5. 体会触发器的作用。 五、实验步骤 在查询分析器中完成实验内容。 1. 使用alter table语句在班级表class中增加班级人数(c_total)字段,默认值(DEFAULT)是0; 2. 为学生表(student)分别创建:

相关文档
相关文档 最新文档