当前位置:文档之家› 数据库实训操作题参考答案

数据库实训操作题参考答案

数据库实训操作题参考答案
数据库实训操作题参考答案

销售管理数据库的操作题

销售管理数据库的数据查询

1.查询员工"王娜"所在的部门。

select DepartmentName

from Department

where DepartmentID=(select DepartmentID from Employee where EmployeeName='姚安娜')

2.查询年龄最小的员工姓名、性别和工资。

select EmployeeName 姓名,Sex 性别,BirthDate 出生年月,Salary 工资

from Employee

where BirthDate=(select MAX(BirthDate)from Employee)

--年龄最小就是出生年月最大,利用嵌套查询,查询最大出生年月

3.查询已经接收销售订单的员工姓名和工资信息。(用两种方法做:嵌套查询、相关子查询)--嵌套查询方法:

Select EmployeeName 姓名,Salary 工资

from Employee

where EmployeeID in(select EmployeeID from Sell_Order)

--相关子查询方法:

Select Employee.*

from Employee

where exists(select*from Sell_Order where Sell_Order.EmployeeID=Employee.EmployeeID)

4.查询订购“牛奶”的客户信息。(用两种方法做:嵌套查询、连接查询)

--嵌套查询:

select CompanyName 公司名称,ContactName 联系人,Address 地址

from Customer

where CustomerID IN(select CustomerID from Sell_Order where

ProductID=(select ProductID from Product where ProductName='牛奶'))

--连接查询:

select CompanyName 公司名称,ContactName 联系人,Address 地址

from Customer join Sell_Order on Customer.CustomerID

=Sell_Order.CustomerID

join Product on Product.ProductID=Sell_order.ProductID

where Product.ProductName='牛奶'

5.查询所有员工姓名、性别、出生年月和所在部门信息。

select DepartmentID 部门号,EmployeeName 姓名,Sex 性别,BirthDate 出生年月,部门名称=

case DepartmentID

WHEN 1 THEN'销售部'

WHEN 2 THEN'采购部'

WHEN 3 THEN'人事部'

else'其他部门'

end

from Employee

group by DepartmentID,EmployeeName ,Sex,BirthDate

6.查询1980年后出生的员工的信息(姓名、性别、出生年月和工资)。

select EmployeeName 姓名,Sex 性别,year(BirthDate)出生年月,Salary 工资

from Employee

where BirthDate>'1980-01-01'

补充:查询1980年-1989年间出生的员工的信息(姓名、性别、出生年月和工资)。

select EmployeeName 姓名,Sex 性别,year(BirthDate)出生年月,Salary 工资

from Employee

where convert(char(4),year(BirthDate),102)like'198[0-9]'

销售管理数据库编程

1.员工“王江娜”与“华农楚天”签订了25台显示器订单。编程实现将订单涉及的相关信息写入到数据库中。

提示步骤:a)客户处理:根据该订单的相关客户信息,到客户表中查阅“华农楚天”是否为老客户,若为新客户,则将客户信息添加到客户表中。b)订单处理:将这条订单信息添加到订单表中。在添加前必须确定Sell_Order表中各字段的值。c)库存处理:在商品表中检查该商品的库存量,若库存量超过订单中商品数量,修改库存量,即商品当前库存量的值减去订单记录中包含的商品的订货数量,增加商品已销售量。

/*定义变量*/

declare @employeeId int

declare @customerId int

declare @max_ordId int

declare @storePro int

declare @productID int

/*客户处理*/

if exists(select*from Customer where CompanyName='华农楚天')

begin

select @customerId=CustomerID FROM Customer where CompanyName='华农楚天'

end

else

begin

select @customerId=MAX(CustomerID)FROM Customer

select @customerId=@customerId+1

insert Customer values(@customerId,'华农楚天','毛梅捷','1385235423','江夏区臧龙大道','ctxy@https://www.doczj.com/doc/2a12701829.html,')

end

/*订单处理*/

select @storePro=ProductStockNumber,@productID=ProductID

FROM Product WHERE ProductName='彩色显示器'

select @max_ordId=MAX(SellOrderID)FROM Sell_Order

select @max_ordId=@max_ordId+1

select @employeeId=employeeId from Employee WHERE EmployeeName='王江娜' insert Sell_Order

values(@max_ordId,@productID,25,@employeeId,@customerId,GETDATE())

/*库存处理*/

update Product

set ProductStockNumber=ProductStockNumber-25,

ProductSellNumber=ProductSellNumber+25

where ProductID=@productID

2.查询各位员工接收销售订单明细表以及订单的总金额,并根据订单中商品总金额,生成员工奖励的报表。当金额订单中商品总超过十万元,奖金10000;金额10000~99999元,奖金为订单中商品总金额的10%,金额10000元~1000元的奖金为880元,1000元以下的没有奖金。

(1)查询员工接收的销售订单明细表,包括订单金额。

Select

https://www.doczj.com/doc/2a12701829.html,panyName,P.ProductName,P.Price,S.SellOrderNumber,S.SellOrderDate ,E.EmployeeName,P.Price*S.SellOrderNumber 订单金额

From Employee as E join Sell_Order as S on E.EmployeeID=S.EmployeeID join Customer as C on C.CustomerID=S.CustomerID join Product as P on

P.ProductID=S.ProductID

Order by E.EmployeeID

COMPUTE sum(P.Price*S.SellOrderNumber)by E.EmployeeID

(2)根据员工接收订单的总金额计算员工奖金。

select E.EmployeeName ,E.EmployeeID ,SUM(S.SellOrderNumber*P.Price)as 总金额,奖金=

case

when sum(S.SellOrderNumber*P.Price)>100000 then 10000

when sum(S.SellOrderNumber*P.Price)between 10000 and 99999 then

sum(S.SellOrderNumber*P.Price)*0.1

when sum(S.SellOrderNumber*P.Price)between 1000 and 9999 then 880 else 0

end

from Employee as E ,Product as P,Sell_Order as S

WHERE E.EmployeeID=S.EmployeeID AND P.ProductID=S.ProductID

GROUP BY E.EmployeeID,E.EmployeeName

销售管理数据库中视图、索引的应用

1.创建一个订单详细信息视图Em_Sell_Order,包括员工姓名、订购商品名称、订购数量、单价和订购日期。

Create view Em_Sell_Order

As

Select EM.EmployeeName as员工姓名,PD.ProductName as商品名,

SO.SellOrderNumber as订购数量,PD.Price as单价,SO.SellOrderDate as订购日期

From Employee EM inner join Sell_Order SO

ON EM.EmployeeID=SO.EmployeeID inner join Product PD

ON SO.ProductID=PD.ProductID

2.创建一个员工统计订单信息视图,包括员工编号、订单数目和订单总金额。

SELECT员工姓名,COUNT(员工姓名)订单数目,sum(单价*订购数量)总金额

From Em_Sell_Order

Group by员工姓名

--如果不用视图,而直接利用张基本表进行查询语句较为复杂

3.创建一个统计商品销售信息视图View_Pro_Sell,包括商品名称、订购总数量。

Create view View_Pro_Sell

As

Select商品名,sum(订购数量)总数量

From Em_Sell_Order

Group by商品名

4.利用视图查询“牛奶”的订购数量。

Select*from View_Pro_Sell where商品名='牛奶'

5.利用视图查询“王娜”接收销售订单的信息。

select*from Em_Sell_Order where员工姓名='王娜'

6.创建员工表的索引。

Employee(EmployeeID, Employee Name, Sex, BirthDate, HireDate, Salary, DepartmentID)

/*分析:在员工表中员工编号为主键列,则自动创建唯一的聚集索引。在员工表中,经常要查找指定姓名的员工信息,为了提高查找效率,为Employee Name列创建非聚集索引。

另外,部门编号DepartmentID为连接部门表的列,因而也需要创建非聚集索引。*/

Create index IX_name_Employee on Employee(EmployeeName)

Create index IX_DepartmentID_Employee on Employee(EmployeeID)

7.创建客户表索引。

Customer(CustomerID, CompanyName, ContactName, Phone ,address, EmailAddress)

/*分析:在客户表中客户编号为主键列,则自动创建唯一聚集索引。在客户表中,经常要按照客户名称查找信息,同时一般客户的名称不同,为了提高查找效率,对CompanyName列创建唯一的非聚集索引。

另外,经常查找各客户的联系人得姓名,所以创建ContactName列的非聚集索引。*/ Create unique index IX_name_Customer on Customer(CompanyName)

Create index IX_ContactName_Customer on Customer(ContactName)

销售管理数据库中存储过程的应用

1、创建一个名为Customer_Order的存储过程,用于获取指定客户的信息,包括联系人姓名、联系方式以及该公司订购产品的明细表。

create proc customer_order

@customername varchar(20)

as

select companyname,contactname,productname,price,sellordernumber,sellorderdate

from sell_order,product,customer

where sell_order.productID=product.productID and sell_order.customerID=customer.customerID and companyname=@customername

exec customer_order @customername='林川中学'

2、创建名为listEmployee的存储过程,其功能为:在员工表中查找符合性别和超过指定工资条件的员工的详细信息。利用存储过程listEmployee,查找工资超过4000元的男员工和工资超过3500元的女员工的详细信息。

Create procedure listEmployee

@sex varchar(2),@salary money

as

select*

from Employee

where sex=@sex and salary>@salary

exec listEmployee @sex='男',@salary=4000

exec listEmployee @sex='女',@salary=3500

3、根据指定的客户名查询该客户相关订单信息的存储过程。

create proc customer_1 @CustomerName varchar(50)

as if exists(select*from Customer where CompanyName=@CustomerName)

select https://www.doczj.com/doc/2a12701829.html,panyName 公司名称, product.productName 商品名称,

product.Price 单价, Sell_order.sellOrderNumber 数量,

Sell_order.SellOrderDATE 订货日期from customer join Sell_order on

customer.customerID = Sell_order.customerID join product

on Sell_order.productID = product.productID

where https://www.doczj.com/doc/2a12701829.html,panyName = @customername

else

print'不存在该客户'

customer_1 '通恒机械有限公司'

4、根据指定客户的查询该客户订购商品总金额的存储过程。(有输出参数)

create proc sumprice @CompanyName varchar(50),@sum int output as

if exists(select*from Customer where CompanyName=@CompanyName)

SELECT https://www.doczj.com/doc/2a12701829.html,panyName AS公司名称, Product.ProductName AS商品名称, Product.Price AS单价, Sell_Order.SellOrderNumber AS数量,

Product.Price * Sell_Order.SellOrderNumber AS金额

FROM Product INNER JOIN Sell_Order ON Product.ProductID = Sell_Order.ProductID INNER JOIN Customer ON Sell_Order.CustomerID = Customer.CustomerID

where https://www.doczj.com/doc/2a12701829.html,panyName=@CompanyName else print'不存在该客户'

DECLARE @sum int EXEC sumprice '通恒机械有限公司', @sum output

5、根据指定客户和订购产品信息,查询接收订单的员工信息。

create proc Employee_SellOrder @CompanyName varchar(50),@ProductName varchar(50)as if exists(select*from customer where CompanyName=@CompanyName)

if exists(select*from Product where ProductName =@ProductName)

select*from Employee where Employee.EmployeeID =(select Employee.EmployeeID from Sell_Order

INNER JOIN Product ON Sell_Order.ProductID = Product.ProductID

INNER JOIN Customer ON Sell_Order.CustomerID = Customer.CustomerID

INNER JOIN Employee ON Sell_Order.EmployeeID = Employee.EmployeeID

where https://www.doczj.com/doc/2a12701829.html,panyName=@CompanyName and Product.ProductName=@ProductName ) else print'该客户没有订购该产品'

else Print'不存在该客户'

Employee_SellOrder '三川实业有限公司','牙刷'

6、创建自动获取商品订购信息的存储过程,包括商品名称、单价、订购的数量、订购公司名称和订购日期等信息。

Create procedure p_order

@ProductName varchar(50)

as

select ProductName,price,SellOrderNumber,CompanyName,SellOrderDate

from Customer,Sell_Order,Product

where Sell_Order.CustomerID=Customer.CustomerID and Sell_Order.ProductID=Product.ProductID and @ProductName=ProductName

exec p_order @ProductName='鼠标'

7、根据指定员工的查询该员工相关接受所有订单信息的存储过程;如果该员工没有接受订单的话,输出相关信息。

create proc employee_sellorder1 @employeename varchar(50)as

if exists(select*from Employee where EmployeeName=@employeename)

if exists(select*from Sell_Order INNER JOIN Employee ON Sell_Order.EmployeeID = Employee.EmployeeID where EmployeeName=@employeename)

SELECT Employee.EmployeeName,Product.ProductName,Product.Price, Sell_Order.SellOrderNumber

FROM Sell_Order INNER JOIN Product ON Sell_Order.ProductID = Product.ProductID INNER JOIN Customer ON Sell_Order.CustomerID =Customer.CustomerID INNER JOIN Employee ON Sell_Order.EmployeeID = Employee.EmployeeID

where Employee.EmployeeName=@employeename

else

print'该员工没有接受订单'

else

print'不存在该员工'

employee_sellorder1'李央'

8、根据员工信息的查询该员工总销售金额的存储过程。如果该员工没有接收订单的话,则销售金额为0。(有输出参数)

create proc employee_sumsales @employeename varchar(50),

@sumsales money output as

if exists(select*from Employee where employeename=@employeename)

if exists(select*from Sell_Order INNER JOIN Employee ON Sell_Order.EmployeeID = Employee.EmployeeID where Employee.EmployeeName =@employeename)

SELECT @sumsales =SUM(Product.Price * Sell_Order.SellOrderNumber)

FROM Sell_Order INNER JOIN Product ON Sell_Order.ProductID = Product.ProductID

INNER JOIN Employee ON Sell_Order.EmployeeID = Employee.EmployeeID

where Employee.EmployeeName=@employeename

else set @sumsales=0

else print'不存在该员工'

DECLARE @sumsales money

EXEC employee_sumsales '李央',@sumsales output

select @sumsales 总金额

9、根据雇员的姓名,查询该雇员的奖金情况,奖金根据该雇员接收订单的总金额计算得到。(奖金=总金额*5%)。

create procedure Employee_Reward

@EmployeeName varchar(50),@reward int output

as

select @reward=sum(0.05*price*SellOrderNumber)

from Sell_Order inner join Employee on

Sell_Order.EmployeeID=Employee.EmployeeID

inner join Product on

Sell_Order.ProductID=Product.ProductID

where EmployeeName=@EmployeeName

declare @a int

exec Employee_Reward @EmployeeName='王孔若', @reward=@a output

select @a

--方法二:存储过程调用存储过程

create procedure Employee_Reward

@EmployeeName varchar(50),@reward int output

as

declare @sumsales int

exec employee_sumsales @EmployeeName ,@sumsales output

set @reward=0.05*@sumsales 奖金

declare @a int

exec Employee_Reward '王孔若', @reward=@a output

select @a

10、查询所有员工的总薪水信息的存储过程。(有输出参数)

create proc employee_salary @sum money output as

select @sum=sum(Employee.Salary)from Employee

declare @sum money exec employee_salary @sum output

select @sum

11、创建一个指定产品的接收订单总金额的存储过程。

create proc Product_sell @productname varchar(50)as

SELECT sum( Price*ProductSellNumber)as'总金额'

FROM Product where productname=@productname

Exec Product_sell '鼠标'

12、创建实现商品表的插入操作的存储过程Proc_Inert_Product。并调用存储过程Proc_Inert_Product,插入一条记录。

create proc Proc_Inert_Product @productName varchar(50), @Price decimal(18,2),

@ProductStockNumber int, @ProductSellNumber int as declare @max_productID int

select @max_productID=MAX(productID)+1 from Product

insert into Product (ProductID,ProductName,Price, ProductStockNumber,ProductSellNumber) values(@max_productID,@productName,@Price,@ProductStockNumber,@ProductSellNumber)

exec Proc_Inert_Product 电脑,6000,190,6

13、在商品表中,创建指定商品编号的删除操作的存储过程。

create proc delete_product @productID int as

delete from Product

where ProductID =@productID

exec delete_product @productID =8

14、在商品表中,创建将指定编号的商品的销量增加指定量的存储过程。

Create procedure P_up

@ID int,@push int

as

update Product

set ProductSellNumber=ProductSellNumber+@push

where ProductID=@ID

exec P_up @ID=1,@push=100

15、创建一个带有通配符参数的存储过程Name_Employee,用于查询指定姓氏的员工信息。Create procedure Name_Employee1

@EmployeeName varchar(40)='%'

as

select*

from Employee

where EmployeeName like @EmployeeName

exec Name_Employee '王%'

--方法二

Create procedure Name_Employee3

@EmployeeName varchar(50)

as

select*

from Employee

where EmployeeName like @EmployeeName+'%'

exec Name_Employee3 '王'

销售管理数据库中触发器的应用

1、在销售管理数据库中,当员工接收到订单时,也就意味对应商品的已销售量增加。在Sell_Order表上创建一个触发器,实现在订单表上添加一条记录时,对应的商品在商品表中的已销售量数据同时更新。

create trigger Sell_Order_Productt

on Sell_Order

after insert

as

update P

set P.ProductStockNumber=P.ProductStockNumber-I.SellOrderNumber,

P.ProductSellNumber=P.ProductSellNumber+I.SellOrderNumber

From Product as P join inserted as I ON P.ProductID=I.ProductID

insert into Sell_Order

values(666,3,20,4,5,getdate())

select*from Sell_Order where ProductID=3

2、在Sell_Order表上创建一个修改触发器,防止用户修改商品的订单数量过大,当订单数量的变化超过100时给出错误提示,并取消修改操作。

CREATE TRIGGER Sell_update_stock

ON Sell_Order

FOR UPDATE

AS

IF UPDATE(SellOrderNumber)

IF(SELECT MAX(ABS(INSERTED.SellOrderNumber -DELETED.SellOrderNumber))

FROM INSERTED JOIN DELETED

ON INSERTED.SellOrderID=DELETED.SellOrderID )>100

BEGIN--为什么用MAX()和ABS()函数?为什么用INSERTED和DELETED表?

PRINT'订购数量修改过大!'

ROLLBACK

END

update Sell_Order

set sellordernumber=sellordernumber+1000

数据库操作题及答案

数据库操作题及答案 【篇一:sql数据库复习资料操作题复习(带答案)】 本文件,文件名为学号姓名.sql,sql语句前加上题号。(共60分)一、创建数据库 创建一个数据库,数据库名为student,主数据文件的逻辑名为student_data,物理名称为student_data.mdf,存放在d盘根目录下,初始大小为10mb,最大可增长到50mb,增长方式是按5%比 例增长;日志文件的逻辑名称为student_log,物理名称为 student_log.ldf,存放在d盘根目录下,初始大小为2mb,最大可 增长到5mb,按1mb增长。 create database student on primary (name=student_data, filename=d:\student_data.mdf, size=10mb, maxsize=50mb, filegrowth=5%) log on (name=student_log, filename=d:\student_log.ldf, size=2mb, maxsize=5mb, filegrowth=1mb) 二、创建表 create table 学生 (学号 char(8) primary key, 姓名 char(20) not null, 性别 char(2) not null check(性别 in(男,女)),出生日期 datetime null) use student create table 成绩 (学号 char(8),课程名 varchar(30),成绩 real null check(成绩 between 0 and 100) primary key(学号,课程名), foreign key (学号) references 学生(学号)) 3、在gxc数据库中创建商品表,表名:sp。结构如下: use gxc create table sp (bh char(20) primary key,mc varchar(50) not null, xkc real, sj money) 4、在gxc数据库中创建供应表,表名:gy。结构如下: create table gy (ddh char(10),bh char(20) not null, sl float not null check(sl0), jg money, jsj datetime default(getdate()), primary key(ddh,bh), foreign key (bh) references sp(bh)) 5、往表中插入以下记录:

数据库作业题目及答案

实验三内容补充 在“教学管理系统”中设计了许多查询,上述只介绍其中具有代表性的部分,其余查询读者可依例完成。本系统包括的所有查询如下所示: 说明:同学们在进行后面的表单设计时,需要用到没有设计过的查询,则再进行对应的查询设计,没有设计到的可以不做。 1.90 以上学生信息 2.按班查不及格学生 3.按班级编号查看学生基本信息 4.按班级查教师信息 5.按班级查选课 6.按教师编号查 7.按教师姓名查看授课信息 8.按课程类别查 9.按课程名查 10.按上课地点查 11.按所选课程查 12.按系名查 13.按姓名查看学生基本信息 14.按学分查 15.按学号查看学生基本信息 16.按学号查选课 17.按职称查 18.不及格人次 19.不及格学生信息 20.低于所在班平均分学生 21.各班学生人数统计 22.各系教师人数 23.各职称教师人数 24.教师基本信息表查询 25.教师每周学时总数 26.每班不及格人次 27.每班每门课平均成绩 28.每班男女生人数 29.每班平均成绩 30.每班平均分 31.每名学生平均成绩 32.某学年某学期教师每周学时总数 33.某学期某课不及格信息 34.统计各系教师的人数 35.统计各职称教师的人数 36.统计每门课教师的人数 37.统计有课教师的人数 38.学生相关信息查询 39.学生选课情况 40.有课教师的人数

实验四数据登录窗体设计一 4.1数据登录窗体的向导创建 在Access中创建窗体有人工方式创建和使用窗体向导创建两种方法。人工方式创建窗体,需要创建窗体的每一个控件,并建立控件和数据源之间的联系。而使用窗体向导创建窗体,用户只需按照向导的提示输入有关信息,一步一步地完成。创建过程既简单、快捷,又效率高,因此,在设计Access数据库应用系统时,往往是先使用窗体向导建立窗体的基本轮廓,然后再切换到设计视图使用人工方式进行调整。我们在创建“登录教师档案”窗体时采用的就是这种方法。 利用窗体向导创建“登录教师档案”,窗体的步骤如下: ①双击“窗体”对象中“使用向导创建窗体”选项,启动“窗体向导”如图2-1所示。 图2-1“窗体向导”第一个窗口 ②单击“表/查询”下拉列表框右侧的箭头,列出所有有效的表或者查询数据源,从中选择“表:教师档案表”。 ③在“可用字段”列表框中选择需要在新建窗体中显示的字段,此处,单击按钮选择所有字段。 ④单击“下一步”按钮,弹出如图2-2所示的窗口。在此对话框中,选择“纵栏表”项,这时可以在左边看到所建窗体的布局。

华师在线数据库应用作业及答案

作业 1.第1题 使用( )身份验证方式需要客户端应用程序连接时提供登录时需要的用户标识和密码。 A.Windows身份验证 B.SQL Server 身份验证 C.以超级用户身份登录时 D.其他方式登录时 您的答案:B 2.第2题 表达式'123’+'456’的值是()。 A.123456 B.579 C.'123456’ D.'123456” 您的答案:B

3.第3题 将多个查询结果返回一个结果集合的运算符是( )。 A.JOIN B.UNION C.INTO D.LIKE 您的答案:B 4.第4题 使用T-SQL创建视图时,不能使用的关键字是:( )。 A.ORDER BY B.WHERE https://www.doczj.com/doc/2a12701829.html,PUTE D.WITH CHECK OPTION 您的答案:C 5.第5题 系统存储过程在系统安装时就已创建,这些存储过程存放在( )系统数据库中。 A.master

B.tempdb C.model D.msdb 您的答案:A 6.第6题 下面哪种文件无法与SQL Server数据库进行导入和导出操作()。 A.文本文件 B.EXCEL文件 C.Word文件 D.Access文件 您的答案:C 7.第7题 数据库逻辑结构设计阶段的主要功能是:( )。 A.明确用户需求,确定新系统的功能 B.建立数据库的E-R模型 C.将数据库的E-R模型转换为关系模型 D.选择合适的存储结构和存储路径

您的答案:C 8.第8题 在数据库设计过程使用( )可以很好的描述数据处理系统中信息的变换和传递过程。 A.数据流图 B.数据字典 C.E-R图 D.系统流程图 您的答案:A 9.第9题 下列SQL语句中,能够实现参照完整性控制的语句是:( )。 A.FOREIGN KEY B.PRIMARY KEY C.REFERENCES D.FOREIGNKEY和REFERENCES 您的答案:D 10.第10题 T-SQL中的全局变量以( )作前缀。

数据库模拟考试(操作题)

Access数据库 ================================================== 第一题: 在考生文件夹下有"samp1"数据库,试按要求完成如下操作: 1.建立表”tTeacher”,结构如表19、1所示; 2.设置”编号”字段为主键; ?3。设置”工作时间"字段得有效性规则为:小于2004—7—1; ?4.将"在职否”字段得默认值设置为真值; ?5。在”tTeacher"表中输入以下2条记录,如表19、2所示; 第二题 打开"test、accdb"数据库文件。(考生目录:C:\Exam) 1、从学生表查询,蒙古族得学生,结果显示学号、姓名、民族,查询

命名为”查询1". 2、从学生表查询,出生日期在”1990—12-1"以前得男同学,结果显示学号、姓名两个字段,查询命名为"查询2”。 3、从学生表查询,籍贯为”上海"得姓李得同学,结果显示姓名、籍贯两个字段,查询命名为"查询3”。 4、从学生表查询,各民族学生人数,结果显示民族、人数两个字段,查询命名为"查询4"。 5、按籍贯统计学生人数,要求只保留人数在4人以上(包括4人)得数据,结果显示籍贯、人数两个字段,查询命名为"查询5"。 第三题 打开"samp、accdb"数据库文件,创建"student"表,表结构如下: 字段名称数据类型字段大小 学生ID数字整型 姓名文本5 性别文本1 年龄数字整型 2)设置”年龄"字段有效值大于2O(包括20),否则提示"请输入大于20得值”. 3)在"student"表中输入如下数据. 4)修改"student"表得文本格式,设置字体为"微软雅黑",字号"18”,单元格效果为"凸起".

数据库应用作业参考答案

读书破万卷下笔如有神 数据库应用作业参考答案 1.第1题 将多个查询结果返回一个结果集合的运算符是( )。 A.JOIN B.UNION C.INTO D.LIKE 您的答案:B 题目分数:3 此题得分:3.0 2.第2题 SELECT s_no=学号,s_name=姓名FROM information WHERE 班级名='软件021'表示( )。 A.查询INFORMATION表中'软件021'班学生的学号、姓名 B.查询INFORMATION表中'软件021'班学生的所有信息 C.查询INFORMATION表中学生的学号、姓名 D.查询INFORMATION表中计算机系学生的记录 您的答案:A 题目分数:3 此题得分:3.0 3.第3题 表达式STUFF(‘HOW ARE YOU',4,1,'OLD')的值是()。 A.'HOWARE YOU' B.'HOW OLD ARE YOU' C.'HOWOLDARE YOU' D.'HOW OLD RE YOU' 您的答案:B 题目分数:3 此题得分:3.0 4.第4题 命令SELECT s_no,A VG(grade) AS ‘平均成绩' FROM score GROUP BY s_no HA VING A VG(grade)>=85,表示( )。 A.查找score表中平均成绩在85分以上的学生的学号和平均成绩 B.查找平均成绩在85分以上的学生 C.查找score表中各科成绩在85分以上的学生

D.查找score表中各科成绩在85分以上的学生的学号和平均成绩 读书破万卷下笔如有神 您的答案:A 题目分数:3 此题得分:3.0 5.第5题 ( )是位于用户与操作系统之间的一层数据管理软件。 A.数据库管理系统 B.数据库系统 C.数据库 D.数据库应用系统 您的答案:A 题目分数:3 此题得分:3.0 6.第6题 将SQL Server 2000的数据库转换成ACCESS数据库,可以使用( )来实现。 A.订阅/发布 B.数据备份/恢复 C.数据分离/附加 D.DTS导入/导出 您的答案:D 题目分数:3 此题得分:3.0 7.第7题 索引项的顺序与表中记录的物理顺序一致的索引,称之为( )。 A.复合索引 B.唯一性索引 C.聚簇索引 D.非聚簇索引 您的答案:B 题目分数:3 此题得分:3.0 8.第8题 下列命令不属于DBMS的数据定义语言的是:( )。 A.CREATE B.DROP

数据库习题作业

数据库习题作业重点(第2-3-4章) 7 2 3 4 4 3 计算R ∪S ,R-S ,R ∩S ,R ×S ,π 3,2(S ),σB<’5’(R),R R S 。 解: R ∪S A B C R -S A B C R ∩S A B C 3 6 7 3 6 7 7 2 3 2 5 7 2 5 7 7 2 3 4 4 3 4 4 3 3 4 5 R ×S R.A R.B R.C S.A S.B S.C 3,2(S ) C B 3 6 7 3 4 5 5 4 3 6 7 7 2 3 3 2 2 5 7 3 4 5 2 5 7 7 2 3 7 2 3 3 4 5 7 2 3 7 2 3 4 4 3 3 4 5 4 4 3 7 2 3

σ B<’5’(R ) A B C R ?S R.A R.B R.C S.A S.B S.C 7 2 3 7 2 3 3 4 5 4 4 3 R ?S A B C 7 2 3 2.7 设有关系R 和S : R A B S B C a b b c c b e a d e b d 计算R ? S ,R ? S ,σA=C (R ×S),S ? R 。 2.8 假设关系U 和V 分别有m 个元组和n 个元组,给出下列表达式中可能的最小和最大的元组数量: 2<2 B

⑴ U∩V ⑵ U∪V ⑶ U?V ⑷σF(U)×V (F为某个条件)⑸πL(U)-V (其中L为某属性集) 解: 操作最小元组数最大元组数 ⑴ U∩V 0 min(m,n) ⑵ U∪V max(m,n) m+n ⑶ U?V 0 m×n ⑷σF(U)×V 0 m×n ⑸πL(U)-V 0 m 2.17 设有三个关系: T(T#,TNMAE,TITLE) C(C#,CNAME,T#) S(S#,SNAME,AGE,SEX) SC(S#,C#,SCORE) 试用关系代数表达式表示下列查询语句: ①检索年龄小于17岁的女学生的学号和姓名。 ②检索男学生所学课程的课程号和课程名。 ③检索男学生所学课程的任课教师的工号和姓名。 ④检索至少选修两门课的学生学号。 ⑤检索至少有学号为S2和S4学生选修的课程的课程号。 ⑥检索WANG同学不学的课程的课程号。 ⑦检索全部学生都选修的课程的课程号与课程名。 ⑧检索选修课程包含LIU老师所授全部课程的学生学号。

互联网数据库网上作业客观题答案

一、单选题: 1.数据模型是()。 A.现实世界数据内容的抽象 B.现实世界数据特征的抽象 C.现实世界数据库结构的抽象 D.现实世界数据库物理存储的抽象 2.实际的数据库管理系统产品在体系结构上通常具有的相同的特征是()。 A.树型结构和网状结构的并用 B.有多种接口,提供树型结构到网状结构的映射功能 C.采用三级模式结构并提供两级印象功能 D.采用关系模型 3.范式是指()。 A.规范化的等式 B.规范化的关系 C.规范化的数学表达式 D.规范化的抽象表达式 4.SQL语言中,模式对应于()。 A.视图和部分基本表 B.基本表 C.存储文件 D.物理磁盘 5.SQL语言中,内模式对应于()。 A.视图和部分基本表 B.基本表

C.存储文件 D.物理磁盘 6.所谓2NF,就是()。 A.不允许关系模式的属性之间有函数依赖Y→X,X是码的真子集,Y是非主属性 B.不允许关系模式的属性之间有函数依赖X→Y,X是码的真子集,Y是非主属性 C.允许关系模式的属性之间有函数依赖Y→X,X是码的真子集,Y是非主属性 D.允许关系模式的属性之间有函数依赖X→Y,X是码的真子集,Y是非主属性 7.所谓静态元组约束,就是()。 A.规定组成一个行的各个元组之间的约束关系 B.规定组成一个元组的各个之间的约束关系 C.规定组成一个列的各个元组之间的约束关系 D.规定组成一个元组的各个行之间的约束关系 8.在数据字典中,反映了数据之间的组合关系的是()。 A.数据结构 B.数据逻辑 C.数据存储方式 D.数据记录 9.在传输表单数据时,跟在httpheader后有一专门的数据段,这个数据段包含在表单中输入的查询参数,它一起被发送给Web服务器,这种传递方法是()。 A.GET方法 B.POST方法 C.PUT方法 D.REP方法

数据库基本操作习题与答案

第三章数据库基本操作 一、选择题 1. 如果需要给当前表增加一个字段,应使用的命令是________。 A) APPEND B) INSERT C) EDIT D) MODIFY STRU 2. 设表文件及其索引已打开,为了确保指针定位在物理记录号为1的记录上,应该使用命令________。 A) SKIP 1 B) SKIP -1 C) GO 1 D) GO TOP 3. 要显示数据库中当前一条记录的内容,可使用命令________。 A) LIST B) BROWSE C) TYPE D) DISPLAY 4. 在当前表中,查找第2个女同学的记录,应使用命令________。 A) LOCATE FOR 性别="女" B) LOCATE FOR 性别="女" NEXT 2 C) LIST FOR 性别="女" CONTINUE D) LOCATE FOR 性别="女" CONTINUE 5. Visual FoxPro的数据库表之间可建立两种联系,它们是________。 A) 永久联系和临时联系B) 长期联系和短期联系 C) 永久联系和短期联系D) 长期联系和临时联系 6. 数据库表的索引中,字段值不能有重复的索引有________种。 A) 1 B) 2 C) 3 D) 4 7. 建立表间临时关联的命令是________。 A) LET RELATION TO命令 B) JOIN命令 C) SET RELATION TO命令 D) 以上都不是 8. 通过关键字建立表间的临时关联的前提是________。 A) 父表必须索引并打开B) 子表必须索引并打开 C) 两表必须索引并打开D) 两表都不必索引 9. 查询设计器的“筛选”选项卡上,“插入”按钮的作用是________。 A) 用于增加查询输出字段B) 用于增加查询的表 C) 用于增加查询去向D) 用于插入查询输出条件 10. 在多工作区的操作中,如果选择了4,7,8号工作区并打开了相应的数据库,在命令窗口执行命令SELECT 0,其功能是________。 A) 选择4号工作区为当前工作区B) 选择0号工作区为当前工作区 C) 选择7号工作区为当前工作区D) 选择8号工作区为当前工作区 11. 表结构中空值(NULL)的含义是________。 A) 空格B) 尚未确定

数据库作业答案

班级:自动化3班姓名:方超

数据库作业解答: 第二章 1、指明下列实体间联系的种类: (1)教研室和教师(假设一个教师只属于一个教研室,一个教研室可有多名教师)。 答:一对多 (2)商店和顾客。 答:多对多 2、指出下列关系模式的主码: (1)考试情况(课程名,考试性质,考试日期,考试地点)。假设一门课程在不同的日期可以有多次考试,但在同一天只能考一次。多门不同的课程可以同时进行考试。 答:课程名、考试日期 (2)教师授课(教师号,课程号,授课时数,学年,学期)。假设一名教师在同一学年和

学期可以讲授多门课程,也可以在不同学年和学期多次讲授同一门课程,对每门课程的讲授都有一个授课时数。 答:课程号、学年、学期 (3)图书借阅(书号,读者号,借书日期,还书日期)。假设一个读者可以在不同的日期多次借阅同一本书,一个读者可以同时借阅多本不同的图书,一本书可以在不同的时间借给不同的读者。但一个读者不能在同一天对同一本书借阅多次。 答:书号、读者号、借书日期 第三章 1、数据完整性的含义是什么? 答:数据的完整性是为了防止数据库中存在不符合应用语义的数据,为了维护数据的完整性,数据库管理系统提供了一种机制来检查数据库中的数据,看其是否满足语义规定的条件。这些加在数据库数据之上的语义约束条件就是数据完整性约束条件。 2、在对数据进行什么操作时,系统检查Default约束?进行什么操作时,检查Check约束? 答:插入操作且省略了某些列的值时检查DEFAULT约束。插入和修改操作检查CHECK 约束。 3、UNIQUE约束的作用是什么? 答:限制列的取值不重复。 第六章

《数据库系统概论》课后习题及参考答案

课后作业习题 《数据库系统概论》课程部分习题及参考答案 第一章绪论(教材 41页) 1.试述数据、数据库、数据库系统、数据库管理系统的概念。 数据: 描述事物的符号记录称为数据。数据的种类有文字、图形、图象、声音、正文等等。数据与其语义是不可分的。 数据库: 数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。 数据库系统: 数据库系统( DBS)是指在计算机系统中引入数据库后的系统构成。数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 数据库管理系统: 数据库管理系统 (DBMS)是位于用户与操作系统之间的一层数据管理软件。用于科学地组织和存储数据、高效地获取和维护数据。DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。 2.使用数据库系统有什么好处? 使用数据库系统的好处是由数据库管理系统的特点或优点决定的。 使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。 为什么有这些好处,可以结合第 5题来回答。

使用数据库系统可以大大提高应用开发的效率。因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由 DBMS来完成。 此外,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。数据逻辑结构的改变是 DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。 使用数据库系统可以减轻数据库系统管理人员维护系统的负担。因为 DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。 总之,使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,可以提高数据的利用率和一致性,又有利于应用程序的开发和维护。 3.试述文件系统与数据库系统的区别和联系。 文件系统与数据库系统的区别: 文件系统面向某一应用程序,共享性差、冗余度大,独立性差,纪录内有结构、整体无结构,应用程序自己控制。 数据库系统面向现实世界,共享性高、冗余度小,具有高度的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力。 文件系统与数据库系统的联系是: 文件系统与数据库系统都是计算机系统中管理数据的软件。 5.试述数据库系统的特点。 数据库系统的主要特点有: 一、数据结构化 数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。 二、数据的共享性高,冗余度低,易扩充

数据库操作题

数据库操作题 一、定义数据库LJSPS,数据库中有四张数据表:供应商S(供应商号,供应商名,供应商所在城市);零件P(零件号,零件名称,零件颜色);项目J(项目号,项目名称);供应情况SPJ(供应商号,零件号,项目号,供应数量)。 查询项目J3使用的所有零件;查询P3号供应商参与的项目;查询HEAR城市的供应商所参与的项目;统计每种零件的供应总量。 二、数据库PP下有学生表student(班级Clss,学号S no,姓名Sname,性别Ssex,出生年月Birthday,地区Region,班长Bz,年龄Age),教师表teacher(部门Dept,工号Tno,姓名Tname,性别Tsex,出生年月Birthday,地区Region),课程表course(课程号Cno,课程名Cname,学分Cfe,学时Ctime),成绩表score(学号Sno,课程号Cno,成绩Cj),等级表grade(学号Sno,最高分Ctop,最低分Cbotton。平均分Avggrade)。 1.根据数据结构说明,写出创建学生表student的SQL语句。 2.根据数据结构说明,写出创建成绩表score的SQL语句。 3.删除teacher表中Dept字段。 4.在teacher表中添加字段Party(字符型8位)。 5.将student表中的Bz字段改名为Monitor。 6.将score表中的Cno字段的宽度改为6位。 7.删除等级表grade。 8.在课程表course中添加记录('000012','C语言',4,73)。 9.在课程表course中将‘C语言’的学时数改为80。 10.在课程表course中删去‘C语言’课程的记录。 11.查询课程表course中包含‘高等’的课程名和对应的学分。 12.按学号降序显示所有上海地区姓张学生的记录。 13.建立所有不及格课程的视图BJG。 14.建立所有有课程成绩不及格学生的视图S_student(包括学号和姓名)。 15.找出000001、000003、000005号课程中一门也没选修的上海学生的学号、姓名。 16.查询选修了‘数据处理’课程并及格的学生学号、姓名,按成绩降序排列。 17.按姓名分别统计‘高等数学’课程的平均分、最高分、最低分。 18.找出除了‘高等数学’课程外,其余课程平均成绩在80到90之间的学生人数(用视图 加查询实现)。 19.找出每个地区中选修课程最多的学生学号、姓名和性别(用视图加查询实现)。 20.将课程表course中的每门学分低于4分的课程的学分增加1学分。 21.为student表增加一个年龄字段Age,类型为整型。并计算每个学生的年龄存入student 表中的Age字段中。 22.建立一个选修了‘数据库’课程的学生视图,包括学生所有信息及该门课程的成绩。 23.查询获得10个以上学分的学生学号、姓名和所得学分。 24.输出所有有人选修的课程名称(不含重复行)。 25.找出选修了‘C语言’课程但没有及格的姓‘张’的学生学号、姓名。 26.找出除了‘高等数学’课程外,其余课程平均成绩不高于70分的学生人数(用视图加 查询实现) 27.统计男生选修的课程,列出课程名、课程的学分和学时数,按学分排列。

《数据库原理及应用》第三次在线作业参考答案

作业 第1题关系代数的基本操作组成关系代数的完备操作集,其他操作均可以由 基本操作来表达。具体而言,关系代数的基本操作有()。 您的答案:C 题目分数:0.5 此题得分:0.5 批注:课件第七章 第2题在具有非过程性查询语言的数据库系统中,()是查询处理的核心。 您的答案:B 题目分数:0.5 此题得分:0.5 批注:概述 第3题关系数据库系统的查询处理包括两个方面的内容:查询优化和()。 您的答案:A 题目分数:0.5 此题得分:0.5 批注:概述 第4题()是选择操作中的线性搜索算法。 您的答案:D 题目分数:0.5 此题得分:0.5 批注:启发式代数优化算法 第5题()是选择操作中的主索引搜索算法。 您的答案:B 题目分数:0.5 此题得分:0.5 批注:启发式代数优化算法 第6题设关系R和S的属性个数分别为r和s,则(R×S)操作结果的属性个 数为()。

题目分数:0.5 此题得分:0.5 批注:笛卡尔积 第7题查询处理最终可转化成基本的()代数操作。 您的答案:A 题目分数:0.5 此题得分:0.5 批注:查询处理过程 第8题计算笛卡尔乘积的最简单算法称为()。 您的答案:C 题目分数:0.5 此题得分:0.5 批注:笛卡尔积 第9题在SQL中,表示选择操作的语句为()。 您的答案:A 题目分数:0.5 此题得分:0.5 批注:关系数据库标准语言SQL 第10题在SQL中,表示连接操作的语句为()。 您的答案:B 题目分数:0.5 此题得分:0.5 批注:连接操作 第11题投影操作中不包含主键,需要去除重复()。 您的答案:D 题目分数:0.5 此题得分:0.5 批注:投影操作 第12题关系代数的四个组合操作是:交、自然连接、连接和()。您的答案:C 题目分数:0.5 此题得分:0.5

数据库操作题目

数据库操作题目 内容和要求: 在SQL Server 2000的【企业管理器】中,通过鼠标右击【数据库】,选择快捷菜单中的【所有任务】中的【附加数据库(A)…】将School_Data和School_Log两个文件还原。查看数据库School中的四个表:CHOICES(学生选课信息表)、COURSES(课程信息表)、STUDENTS(学生信息表)、TEACHERS(教师信息表)的表结构和表关系。 在SQL Server 2000中使用【查询分析器】选择School数据库,编写相关的SQL语句完成以下的操作内容: 1.使用SQL语句建立以下两个表 表PERSON 表ROOM SQL语句: 2.(1)在表PERSON中添加一个Rtype字段,类型为CHAR,长度为10 (2)将表ROOM的Rname字段长度更改为40;删除表ROOM的Rname字段 (3)删除表ROOM。 SQL语句: 3.(1)在表STUDENTS中,插入一条('700045678','LiMing','LX@https://www.doczj.com/doc/2a12701829.html,',1992)记录 (2)在表STUDENTS中,将姓名SNAME等于“LiMing”记录的年级GRADE更改为“2002” (3)将表TEACHERS中的所有教师薪水加500;删除表STUDENTS中姓名(SNAME)为“LiMing”的记录;删除表COURSES中课时数小于48的记录。 SQL语句: 4.(1)创建视图CS,视图包含表CHOICES中成绩(SCORE)大于等于60的所有记录 (2)创建视图SCT,记录中包含所有学生姓名(SNAME)、所选修的课程名(CNAME)和任课教师姓名(TNAME)。 SQL语句: 5.(1)在表STUDENTS中,查询年级(GRADE)等于'2001'的所有记录,并根据

信息管理 数据库 作业答案

信息管理数据库作业答案 下载office文档附件 1. 2.视图消解 因为视图没有真实数据,所以对视图的查询要转换为对相应表的查询,这个过程叫视图消解,视图消解过程由DBMS自动完成 正确答案: 视图是从一个或几个基本表(或视图)导出的表,是一个虚表。将对视图的查询转换为对基本表的查询的过程称为视图的消解。 3.函数依赖 函数依赖是从数学角度来定义的,在关系中用来刻画关系各属性之间相互制约而又相互依赖的情况。其类型包括部分函数依赖、完全函数依赖、传递函数依赖。 正确答案: 设R(U)是属性集U上的关系模式。X,Y是U 的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作X?Y。 4.事务 事务(Transaction)是用户定义的一个对数据库读写操作序列,是一个不可分割的工作单位,也是数据库恢复和并发控制的基本单位。数据库系统中通常有多个事务并行运行。在关系数据库中,事务可以是一条、一组SQL语句,或整个程序。 正确答案: 事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。

5.数据字典 数据字典(Data dictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由 DBMS自动更新的数据字典。被动数据字典是指修改时必须手工更新其内容的数据字典。正确答案: 数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。 6. 数据库角色 对某个 Analysis Services 数据库具有相同访问权限的用户和组的集合。可以将数据库角色指派给数据库中的多个多维数据集,从而将该角色的用户访问权限授予这些多维数据集。正确答案: 对某个数据库具有相同访问权限的用户和组的集合。 7.简述数据库恢复的基本技术 当系统运行过程中发生故障时,数据库恢复技术将数据库从错误状态恢复到某个一致状态,它是数据库可靠性的保证。数据库恢复的基本原理是利用存储在系统别处的冗余数据来重建其恢复技术的两个关键:(1)如何建立冗余数据(2)如何利用冗余数据恢复数据库正确答案: 数据转储:所谓转储即DBA定期地将整个数据库复制到磁盘或另一个磁盘上保存起来的过程。这些备用的数据文本成为后备副本或后援副本。静态转储:在系统中无运行事物时进行的转储操作。动态转储:在转储期间允许对数据库进行存取或修改。即转储和用户事务可以并发执行。海量转储:每次转储全部数据库增量转储:每次只转储上一次转储后更新过的数据。登记日志文件:日志文件是用来记录事务对数据库的更新操作的文件。为保证数据库是可恢复的,登记日志文件时必须

《数据库原理》1-2章作业(答案)

《数据库原理》知识点 第一章 1、什么是4D(Data, DB、DBMS、DBS),它们之间的关系? 答: 所谓4D是分别指:数据(Data)、数据库(DB或DataBase)、数据库管理系统(DBMS)、数据库系统(DBS)。其中: 数据(Data): 数据库(DB或DataBase): 数据库管理系统(DBMS): 数据库系统(DBS): 当开发一个数据库系统(DBS)时,通常需要借助数据库管理系统(DBMS)来完成建立数据库(DB)、对数据库中数据(Data)进行操作等功能。 2、数据模型的组成要素有哪些? 答:包括: 数据结构:描述数据库的组成对象以及对象之间的联系。 数据操作:指对数据库中各种对象的实例允许执行的操作集合。 数据的完整性约束条件:是指给定的数据模型中数据及其联系所具有的制约和依存规则。 3、ER模型的组成要素有哪些? 答: 实体型、属性和联系所组成。 实体型: 属性: 联系: 4、学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教师,其中有的教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。请用E-R图画出此学校的概念模型。 答:

5、某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按照所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用E-R图画出此工厂产品、零件、材料、仓库的概念模型。

6、试述数据库系统三级模式结构,这种结构的优点是什么? 答: 数据库系统的三级模式结构由外模式、模式、内模式组成。 外模式: 模式: 内模式: 数据库系统的三级模式是针对数据的3个抽象级别,其优点是:它把数据的具体组织留给DBMS管理,使用户能抽象地处理数据,而不必关心数据在计算机中的具体表示和存储方式。 为了能够在内部实现这3个抽象层次之间的联系和转换,数据库系统在三级模式之间提供了二层映像:外模式/模式映像、模式/内模式映像,通过二层映像保证了数据库系统中数据能够具有较高的逻辑独立性和物理独立性。 7、叙述DBS的组成,其中的主要软件是什么?主要人员是谁? 答: DBS一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户组成。 主要软件包括:数据库管理系统。 主要人员:数据库管理员。 第二章 1、叙述关系模型的三类完整性,并举例说明。 答:

数据库实训操作题参考答案

销售管理数据库的操作题 销售管理数据库的数据查询 1.查询员工"王娜"所在的部门。 select DepartmentName from Department where DepartmentID=(select DepartmentID from Employee where EmployeeName='姚安娜') 2.查询年龄最小的员工姓名、性别和工资。 select EmployeeName 姓名,Sex 性别,BirthDate 出生年月,Salary 工资 from Employee where BirthDate=(select MAX(BirthDate)from Employee) --年龄最小就是出生年月最大,利用嵌套查询,查询最大出生年月 3.查询已经接收销售订单的员工姓名和工资信息。(用两种方法做:嵌套查询、相关子查询)--嵌套查询方法: Select EmployeeName 姓名,Salary 工资 from Employee where EmployeeID in(select EmployeeID from Sell_Order) --相关子查询方法: Select Employee.* from Employee where exists(select*from Sell_Order where Sell_Order.EmployeeID=Employee.EmployeeID) 4.查询订购“牛奶”的客户信息。(用两种方法做:嵌套查询、连接查询) --嵌套查询: select CompanyName 公司名称,ContactName 联系人,Address 地址 from Customer where CustomerID IN(select CustomerID from Sell_Order where ProductID=(select ProductID from Product where ProductName='牛奶')) --连接查询: select CompanyName 公司名称,ContactName 联系人,Address 地址 from Customer join Sell_Order on Customer.CustomerID =Sell_Order.CustomerID join Product on Product.ProductID=Sell_order.ProductID where Product.ProductName='牛奶' 5.查询所有员工姓名、性别、出生年月和所在部门信息。 select DepartmentID 部门号,EmployeeName 姓名,Sex 性别,BirthDate 出生年月,部门名称= case DepartmentID WHEN 1 THEN'销售部'

数据库与表的基本操作

第四章数据库与表的基本操作 实验4-1 数据库及表的操作 (一)实验目的 1.掌握创建数据库的基本操作方法。 2.熟练掌握创建表结构和输入记录的操作方法。 3.熟练掌握修改表结构、浏览和修改表记录数据的操作。 4.熟练掌握建立索引的操作。 5.掌握创建表间联系的操作。 (二)实验内容及步骤 1.创建数据库 【实例4-1】在实验2-1所建立的“教学管理.pjx”项目中,创建一个“学生成绩.dbc”数据库。 操作步骤如下: (1)打开“教学管理.pjx”项目。 (2)在“项目管理器”窗口中,选择“数据库”,然后单击“新建”按钮,打开“新建数据库”对话框,单击其中的“新建数据库”按钮,打开“创建”对话框,如图4-1所示。 图4-1“创建”对话框 (3)在“保存在”文本框中,选择保存数据库的文件夹“程序VX”;在“数据库名”文本框中,输入数据库名称“学生成绩”。 (4)单击“保存”按钮,即在指定位置建立一个“学生成绩.dbc”数据库文件。 此时,在VFP主窗口中弹出一个“数据库设计器”窗口,同时还激活了“数据库设计器”工具栏,如图4-2所示。

18 数据库应用学习与实训指导 图4-2“数据库设计器”窗口 2.创建数据表 【实例4-2】在“教学管理.pjx”项目中,创建学生表(Student.dbf)、成绩表(Grade.dbf)、课程表(Course.dbf)、授课表(Teach.dbf)和教师表(Teacher.dbf)。各个表的结构和数据记录如图4-3、图4-4、图4-5、图4-6、图4-7、图4-8、图4-9、图4-10、图4-11和图4-12所示。 图4-3学生表(Student.dbf)的结构 图4-4学生表(Student.dbf)的记录浏览窗口

数据库原理考试试题

广东纺织职业技术学院2009~2010学年第一学期 《网络数据库》期末试卷(A卷) 考试时间:120分钟考试形式:开卷 适用专业:班级:学号:姓名: 说明:考试前将考卷文件夹复制到本地计算机E盘上,并按“学号姓名”重命名文件夹,操作题所有文件都在其中(包括Shoping数据库文件 Shoping_data.mdf和Shoping_log.ldf,以及备份文件Bak),考试结束时将该文件夹复制到桌面,未按要求者操作题部分将按零分计算。 一、选择题(每题1分,共10分) (1)为防止用户对数据库的非法存取操作,DBMS必须提供对数据库( )。 A.安全性保护 B.完整性保护 C.故障恢复 D.并发控制 (2)关系模型的基本数据结构是( )。 A.二维表格 B.树 C.图 D.二级树 (3)关系数据库是若干个( )的集合 A. 行 B. 列 C. 表(关系) D. 视图 (4)不允许在关系中出现重复记录的约束是通过( )实现的。 A.CHECK B.DEFAULT C.Foreign KEY D.Primary KEY 或Unique (5)参照完整性规则,表的( )必须是另一个表主键的有效值,或者是空值。 A.次关键字 B.外键 C.主键 D.主属性 (6)关系数据库是通过( )实现实体间联系的。 A. 链接指针 B.公共属性 C.网状结构 D.树结构 (7)有以下几个关系,学生关系:student(学号(PK),姓名(not Null),性别,年龄);课程关系:course(课程号(PK),课程名(not Null),学分); 成绩关系:grade(学号(PK,FK),课程号(PK,FK),成绩)。当删除student 表中记录时发生异常,则有可能产生的原因是 ( )。 A. 性别字段为空 B. 学号重复 C. 参照完整性约束 D.以上都不是

吉大年数据库应用技术(作业及答案)

单选 "元数据"是指数据结构的描述 SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREATE DROP ALTER语句是实现哪种功能数据定义 SQL 语言具有的功能是数据定义、数据操纵、数据控制、数据查询 SQl语言是()的语言,易学习非过程化 SQl语言是关系数据库语言 SQL语言中,下列涉及空值的操作,不正确的是AGE=NULL X-Y,当下列哪一条成立时,称为平凡的函数依赖Y€ X 层次模型实现数据之间联系的方法是指针层次数据模型的基本数据结构是树 层次型、网状型和关系型数据库划分原则是数据之间的联系 常见的数据模型是层次模型、网状模型、关系模型 从ER图导出关系模型时,如果实体间的联系是M: N的,下列说法中正确的是增加一个关系表示联系,其中纳入M方和N方的码 从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是选择操作 存储在计算机内有结构的数据的集合是数据库 当B属性函数依赖于A属性时,属性A与B的联系是多对1 当关系R和S做自然联接时,能够保留R中不满足连接条件元组的操作是左外联接 当同一个实体集内部实体之间存在着一个M:N的关系时,根据E-R模型转换成关系模型的规则,转换成关系的数目为3 对关系模型叙述错误的是不具有连接操作的DBMS也可以是关系数据库系统对实体和实体之间的联系采用同样的数据结构表达的数据模型为关系模型反映现实世界中实体及实体间联系的信息模型是E-R模型 个关系数据库文件中的各条记录前后顺序可以任意颠倒,不影响库中的数据关系关系代数运算的基础是集合运算 关系代数中的连接操作是由选择和笛卡尔积操作组合而成关系规范化中的插入操作异常是指应该插入的数据未被插入 关系模式的候选关键字可以有 1 个或多个,而主关键字有1 个 关系模式的任何属性以上都不对 关系模式中的关系模式至少是1NF 关系数据库的规范化理论主要解决的问题是如何构造合适的数据逻辑结构 关系数据库管理系统应能实现的专门关系运算包括选择、投影、连接关系数据库中,实现实体之间的联系是通过关系与关系之间的公共属性关系数据模型可以表示实体间的任意联系 规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及冗余度大的缺欠 候选关键字中的属性称为主属性 假设有关系R和S,关系代数表达式R—( R— S)表示的是RA S 假设在一个E-R模型中,存在10个不同的实体集和12个不同的二元联系(二元联系是指两个实体集之间的联系),其中3个1:1联系、4个1 : N、5个M : N联系,则这个E-R模型转换成关系的数目可能是15 描述数据库全体数据的全局逻辑结构和特性的是模式 区分不同实体的依据是属性 如何构造出一个合适的数据逻辑结构是()主要解决的问题。逻辑结构设计 若要撤销数据库中已经存在的表S,可用DROP TABLE S 若要在基本表S中增加一列CN (课程名),可用ALTER TABLE S ADDCN CHAR(8)) 若用如下的SQL语句创建了一个表SC: CREATETABLESC (S# CHAR ( 6) NOT NULL,C# CHAR (3) NOT NULL,SCORENTEGER NOTE CHAR(20));向SC表插入如下行时,()行可以被插入。(’200823 ' 101'NULL,NULL) 若用如下的SQL语句创建一个student 表,则可插入至表中的是CREATE TABLE student (NO C(4NOT NULL, NAME C(8) NOT NULL, SEXC(2), AGE N(2)> ( '1031 '曾华’,NULL,NULL) 设关系R和S具有相同的结构,由属于S但不属于R的元组构成的关系,记为R U S 设关系数据库中一个表S的结构为:S (SN, CN, grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0—100。若要更正王二的化学成绩为85分,则可用UPDATE S SET grade85 WHERE SN='王二'AND CN '化学' 设关系数据库中一个表S的结构为S( SN, CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型, 取值范围0—100。若要把张二的化学成绩80分”插入S中,则可用.INSERT INTO S VALUES张二’,’化学’,80)设计性能较优的关系模式称为规范化,规范化主要的理论依据是关系规范化理论 设在某个公司环境中,一个部门有多名职工,一名职工只能属于一个部门,则部门与职工之间的联系是一对多

相关主题
文本预览
相关文档 最新文档