数据库上机实验4、5
数据库上机实验报告
数据库上机实验报告数据库上机实验网络1002 3100610055一、实验目的1.通过上机操作,加深对数据库理论知识的理解。
2.通过使用具体的微机DBMS(SQL Server),了解一种实际的数据库管理系统,并掌握其操作技术。
3.通过实际题目的上机实验,提高动手能力,提高分析问题和解决问题的能力。
二﹑实验题目某供应商(S)供应(SPJ)某种零件(P)给某个工程项目(J),其中一个供应商可以供给多个项目零件,而每个项目可以使用多个供应商供应的零件,每种零件可由不同供应商供给,S﹑P﹑J﹑SPJ的数据见附表1。
三、实验报告实验报告按照各实验的实验报告内容来整理。
实验报告提交地址:ftp://202.195.168.13/(在“up”文件夹里的“《数据库系统原理A》上机实验”文件夹中找到班级文件夹)用户名:nianyi密码:123456实验报告命名规则:班级+学号+姓名,如“软件080101王鹏晓”。
四、考核上机实验采用书面分析、平时实验和最后抽查考核相结合的方法评定成绩。
实验一数据库的定义和建立一、实验目的要求学生熟练掌握和使用T-SQL﹑SQL Server对象资源管理器创建数据库﹑基本表和修改表结构,及向数据库输入数据的操作,学会创建和使用表的主码、外码和约束。
二、实验内容1﹑利用SQL Server对象资源管理器创建数据库和查看数据库属性;2﹑利用T-SQL创建基本表﹑确定表的主码、外码和相应的约束;3﹑利用SQL Server对象资源管理器创建表之间的关系图;4﹑利用T-SQL向数据库输入数据。
三、注意事项1﹑输入数据时要注意数据类型、主码和数据约束的限制。
2﹑注意数据库的主码﹑外码和数据约束的定义。
3、注意参照表和被参照表之间的关系,主码和外码间的关系。
四、实验报告内容1﹑创建基本表(包括表的主码、外码和相应的约束)的SQL语句;3﹑输入数据的SQL语句。
create table s(sno char(8) primary key,sname char(20) unique,statuss smallint,city char(20));create table p(pno char(8) primary key,pname char(20),color char(8),weightt smallint);create table j(jno char(8) primary key,jname char(20),city char(20));create table spj(sno char(8),pno char(8),jno char(8),qty smallint,primary key(sno,pno,jno),foreign key(sno) references s(sno),foreign key(pno) references p(pno), foreign key(jno) references j(jno));insertinto svalues('s1','精益','20','天津');insertinto svalues('s2','盛锡','10','北京');insertinto svalues('s3','东方红','30','北京'); insertinto svalues('s4','丰泰盛','20','天津'); insertinto svalues('s5','为民','30','上海');select*from s;insertinto pvalues('p1','螺母','红','12');insertinto pvalues('p2','螺栓','绿','17');into pvalues('p3','螺丝刀','蓝','14'); insert into pvalues('p4','螺丝刀','红','14'); insert into pvalues('p5','凸轮','蓝','40'); insert into pvalues('p6','齿轮','红','30'); select* from p;into jvalues('j1','三建','北京'); insert into jvalues('j2','一汽','长春'); insert into jvalues('j3','弹簧厂','天津'); insert into jvalues('j4','造船厂','天津'); insert into jvalues('j5','机车厂','唐山'); insert into jvalues('j6','无线电厂','常州');into jvalues('j7','半导体厂','南京'); select* from j;insertinto spjvalues('s1','p1','j1','200'); insertvalues('s1','p1','j3','100'); insert into spjvalues('s1','p1','j4','700'); insert into spjvalues('s1','p2','j2','100'); insert into spjvalues('s2','p3','j1','400'); insert into spjvalues('s2','p3','j2','200'); insert into spjvalues('s2','p3','j4','500'); insert into spjvalues('s2','p3','j5','400'); insert into spjvalues('s2','p5','j1','400'); insert into spjvalues('s2','p5','j2','100'); insert into spjvalues('s3','p1','j1','200'); insert into spjvalues('s3','p3','j1','200'); insert into spjvalues('s4','p5','j1','100'); insert into spjvalues('s4','p6','j3','300'); insert into spjvalues('s4','p6','j4','200'); insert into spjvalues('s5','p2','j4','100'); insertvalues('s5','p3','j1','200'); insert into spjvalues('s5','p6','j2','200'); insert into spjvalues('s5','p6','j4','500'); select* from spj;2﹑表之间的关系图;4、总结实验过程中遇到的问题及解决。
数据库上机实习内容
男
6500.00
王恩波
男
4000.00
课程表:
课程代号
课程名称
课时
学分
任课教师
1
数学
144
12
李没有
2
英语
144
12
刘姥姥
3
计算机基础
48
4
王恩波
4
数据库
56
5
王恩波
5
政治
80
8
陆悟
6
体育
64
6
陆悟
成绩表:
学号
课程代号
成绩
学号
课程代号
成绩
2000A12345601
1
100
2000A12345602
4个表的结构分别为:
教师表:
列名
数据类型
长度
允许空
教师姓名
nvarchar
3
不允许
性别
bit
1
允许
照片
image
16
允许
简历
ntext
16
允许
工资
real
4
允许
成绩表:
列名
数据类型
长度
允许空
学号
nvarchar
13
不允许
课程代号
int
4
不允许
成绩
tinyint
1
允许
课程表:
列名
数据类型
长度
允许空
课程代号
在SQL Server企业管理器对话框中选择菜单“工具”,再选择“数据转换服务”,然后选择“导入数据(或导出数据)”.
方法四:
在SQL Server企业管理器对话框中选择菜单“工具”,再选择“向导”,然后选择“数据转换服务”,最后选择“导出向导(或导入向导)”。
数据库应用上机实训报告
一、实训背景随着信息技术的飞速发展,数据库技术已经成为现代信息系统的核心组成部分。
为了提高学生的数据库应用能力,我校特开设了数据库应用上机实训课程。
本次实训旨在通过实际操作,使学生掌握数据库的基本原理、设计方法、开发工具以及数据库应用系统的搭建与维护。
二、实训目的1. 掌握数据库的基本概念、原理和设计方法。
2. 熟练运用数据库开发工具进行数据库的创建、维护和管理。
3. 学会使用SQL语言进行数据库的查询、更新、删除和插入操作。
4. 具备搭建数据库应用系统的基本能力。
三、实训内容1. 数据库设计:包括需求分析、概念设计、逻辑设计和物理设计。
2. 数据库开发工具:使用SQL Server Management Studio进行数据库的创建、维护和管理。
3. SQL语言:学习SQL语句的基本语法,掌握查询、更新、删除和插入操作。
4. 数据库应用系统搭建:以实际项目为例,学习数据库应用系统的搭建与维护。
四、实训过程1. 数据库设计(1)需求分析:了解项目背景,明确数据库应用系统的功能需求。
(2)概念设计:根据需求分析结果,设计实体-关系模型。
(3)逻辑设计:将实体-关系模型转换为关系模型,并定义表结构。
(4)物理设计:选择合适的存储引擎和数据类型,设计索引和视图。
2. 数据库开发工具使用SQL Server Management Studio创建数据库,并进行以下操作:(1)创建表:根据逻辑设计结果,创建相应的表。
(2)插入数据:向表中插入测试数据。
(3)查询数据:使用SQL语句查询表中的数据。
(4)更新数据:使用SQL语句更新表中的数据。
(5)删除数据:使用SQL语句删除表中的数据。
3. SQL语言(1)查询语句:掌握SELECT语句的基本语法,包括条件查询、排序查询、分组查询等。
(2)更新语句:掌握INSERT、UPDATE和DELETE语句的基本语法。
(3)子查询:学习使用子查询进行嵌套查询。
4. 数据库应用系统搭建以一个实际项目为例,学习数据库应用系统的搭建与维护:(1)需求分析:明确项目功能需求。
数据库原理_实验五指导书
数据库原理
实验指导书
实验五SQL Server 2000中数据库安全性设置
1. 实验的目的
1)熟悉通过SQL对数据进行安全性控制。
2)完成作业的上机练习。
2. 实验内容
要求:在SQLSERVER2000中利用SQL语句完成以下操作。
1)通过SQL对登入账号,用户的创建修改与删除。
2)通过SQL对角色管理,以及角色中添加用户。
3)对角色和用户数据的授权和权力回收
3. 实验步骤
1)复制生成xscj数据库的代码并运行。
2)创建登入账号和用户名s1,s2,t1,t2,l1,l2密码与账号相同默认登入访问xscj数据库。
3)创建角色student,teacher,leader。
4)为角色student授权student表、course表和SC表的select 权力,拒绝修改和删除这三个表的权力
5)为角色teacher授权student表、course表和SC表的select 权力,以及对SC表的修改,插入更新的权力, 拒绝修改student表和course表的权力
6)为角色leader授权student表、course表和SC表的select 权力,以及对student表、course 表修改,插入更新的权力,拒绝修改和删除表SC的权力
7)将s1,s2加入student角色
8)将t1,t2加入teacher角色
9)将l1,l2加入leader角色
10)分别以s1,t1,l1登入服务器验证对student表、course表和SC表相应权限的验证。
数据库上机实验报告
数据库上机实验报告数据库上机实验报告引言:数据库是现代信息技术中非常重要的一个组成部分,它可以帮助我们有效地存储、管理和检索大量的数据。
本次上机实验旨在通过实际操作,加深对数据库的理解,并掌握一些基本的数据库操作技巧。
实验环境:本次实验使用的是MySQL数据库管理系统,通过MySQL Workbench进行操作。
数据库中包含了一个学生信息表,其中包括学生的学号、姓名、性别、年龄等信息。
实验内容:1. 创建数据库首先,我们需要创建一个数据库来存储学生信息。
通过在MySQL Workbench中执行CREATE DATABASE语句,我们成功创建了一个名为"student"的数据库。
2. 创建数据表接下来,我们需要在数据库中创建一个数据表来存储学生信息。
通过执行CREATE TABLE语句,我们定义了一个名为"student_info"的数据表,并指定了各个字段的名称和数据类型。
例如,学号字段的数据类型为INT,姓名字段的数据类型为VARCHAR(20)等。
3. 插入数据在数据表创建完成后,我们需要向其中插入一些数据。
通过执行INSERT INTO语句,我们成功插入了几条学生信息记录。
例如,学号为1001的学生姓名为张三,性别为男,年龄为20岁。
4. 查询数据数据库的一个重要功能就是能够快速检索和查询数据。
通过执行SELECT语句,我们可以根据特定的条件来查询数据。
例如,我们可以查询所有性别为女的学生信息,或者查询年龄在18岁以上的学生信息。
5. 更新数据有时候,我们需要修改已有的数据。
通过执行UPDATE语句,我们可以更新数据表中的记录。
例如,我们可以将学号为1001的学生姓名由张三修改为李四。
6. 删除数据如果某条数据不再需要,我们可以通过执行DELETE语句将其从数据表中删除。
例如,我们可以删除学号为1001的学生信息记录。
实验总结:通过本次实验,我对数据库的基本概念和操作有了更深入的理解。
数据库上机实验报告
数据库上机实验报告引言:数据库是一种用于存储和管理数据的工具,它在现代社会中的重要性无可忽视。
本次实验旨在通过实际上机操作,加深对数据库的理解,并熟悉其相关操作和功能。
一、实验背景在信息时代的大背景下,各种类型的数据呈现指数级增长。
为了有效地存储和管理这些数据,数据库被广泛采用。
数据库管理系统(DBMS)是一套软件工具,用于定义、创建、管理和检索数据库。
本次实验将使用一款流行的开源DBMS工具MySQL。
二、实验目的1. 了解数据库的基本概念和原理;2. 掌握数据库的基本操作;3. 理解并应用SQL语言;4. 通过实际操作,熟悉数据库的增删改查功能。
三、实验过程1. 数据库的创建与连接首先,在MySQL中创建一个新的数据库,并通过合适的用户名和密码连接到该数据库。
数据库连接作为与数据库通信的接口,是进行各种操作的基础。
2. 数据表的创建与设置创建数据表是数据库设计的核心部分。
在实验过程中,我们选择创建一个学生信息表格。
通过指定各个字段的数据类型、长度以及约束,定义了学生信息表的结构。
3. 数据的插入与查询在学生信息表中插入若干条测试数据,包括学生姓名、年龄、性别、学号等信息。
通过SQL语句,我们可以灵活地插入、查询和过滤数据。
例如,查询年龄大于20岁的学生或者查询特定学号的学生等。
4. 数据的更新与删除数据库的更新和删除操作是不可或缺的。
我们可以通过SQL语句,修改特定记录的字段值,或者删除某些记录,以实现数据的动态维护和管理。
四、实验结果与分析通过实验操作,我们成功创建了学生信息表格,并插入了若干测试数据。
在查询功能上,我们能够根据不同的条件,按照要求查询指定的学生信息。
此外,我们还尝试了数据的更新和删除操作,成功地修改了一部分学生的年龄和性别,并删除了一些无效的记录。
五、实验总结通过本次数据库上机实验,我对数据库的基本概念、原理和操作有了更深入的了解。
在实践中,我能熟练地使用创建数据库、创建数据表、插入数据、查询数据以及修改和删除数据等功能。
数据库上机作业(学生学籍管理)
上机实验-1Access2003基本操作一、实验目的1.掌握Access2003数据库的构成;2.熟悉Access2003的用户界面。
二、实验内容在Access2003中打开罗斯文示例数据库,结合该数据库来了解Access 数据库的构成,并熟悉Access2003的用户界面。
1.单击“开始”按钮,指向“程序”,然后单击“Microsoft Access”,启动Access2003。
2.在启动对话框中,单击“打开已有文件”下的“罗斯文示例数据库”。
罗斯文示例数据库通常位于“Program Files\Microsoft Office\Office\Samples”文件夹中,文件名为“Northwind.mdb”。
3.在“数据库”窗口中,单击“对象”栏下的“表”,单击“产品”表对象,然后单击“数据库”窗口的工具栏上的“打开”按钮,在“数据表”视图中查看表中的数据记录。
4.从“视图”菜单中选择“设计视图”命令,以切换到设计视图下,查看表中各个字段的定义,例如字段名、数据类型、字段大小等,然后关闭设计视图窗口。
5.在“数据库”窗口中单击“对象”栏下的“查询”,单击“各类产品”查询对象,然后单击“数据库”窗口工具栏上的“打开”按钮,在“数据表”视图下查看运行查询所返回的记录集合。
6.从“视图”菜单中选择“设计视图”命令,以查看创建和修改查询时的用户界面。
7.从“视图”菜单中选择“SQL视图”命令,以查看创建查询时所生成的SQL语句,然后关闭SQL视图窗口。
8.在“数据库”窗口中单击“对象”栏下的“窗体”,单击“产品”窗体对象,然后单击“数据库”窗口工具栏上的“打开”按钮,在窗体视图下查看窗体的运行结果,并单击窗体下方的箭头按钮,在不同记录之间移动。
9.从“视图”菜单中选择“设计视图”命令,以查看设计窗体时的用户界面。
10.从“视图”菜单中选择“数据表视图”命令,以查看存储在基础表中的数据记录,然后关闭数据表视图窗口。
数据库上机实验指导
数据库原理实验指导书实验1 数据库模式设计及建立一、实验目的:(1)掌握数据库模式设计,依据实际要求设计表结构,建立表的关系; 比较SQL命令方式和可视化环境管理器方式设计的异同点。
(2)掌握SQL Server查询分析器的使用方法,加深对SQL和SQL语言的查询语句的理解。
熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
二、实验内容:1、分别用sql查询分析器和企业管理器创建表,并设定相应的约束。
要求:在学生管理数据库XSGL中创建如下三个表。
创建名为student(学生信息)的表,表中的各列要求如下:2、创建score –>student表,以及score –>course表的外部键。
3、增加、修改和删除字段,要求:1) 给student表增加一个memo(备注)字段,类型为varchar(200)。
2) 将memo字段的类型修改为varchar(300)。
3) 删除memo 字段。
4、简单查询操作。
该实验包括投影、选择条件表达,数据排序,使用临时表等。
具体完成以下题目,将它们转换为SQL语句表示,在学生选课数据库中实现其数据查询操作。
1)求数学系学生的学号和姓名2)求选修了课程的学生学号3)求选修课程号为‘C1’的学生号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。
4)求选修课程号为‘C1’且成绩在80~90之间的学生学号和成绩,并成绩乘以0.8输出。
5)求数学系或计算机系姓张的学生的信息。
6)求缺少了成绩的学生的学号和课程号5、连接查询操作。
该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。
1)查询每个学生的情况以及他所选修的课程2)求学生的学号、姓名、选修的课程及成绩3)求选修课程号为‘C1’且成绩在90以上的学生学号、姓名和成绩4)查询每一门课程的间接先行课(即先行课的先行课)三、实验方法将查询需求用SQL语言表示;在SQL Server查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区为Standard Execute(标准执行)或Execute to Grid(网格执行)方式;发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进行修改,直到正确为止。
数据库第四次上机实验报告
数据库第四次上机实验报告班级:姓名:学号:实验日期:一、实验目的熟悉掌握数据库设计开发的整个过程。
二、实验内容a.从需求分析入手,按数据库设计的方法和步骤设计并在计算机上实现一个数据库:供应商――零件――工程。
已知语义是:(1)一个供应商可以提供多种零件;而每种零件由多个供应商供应;(2)每种零件为多个工程使用,而每项工程又需要多种零件;(3)每个供应商有姓名、编号和住址;每种零件有零件名、编号、颜色;每项工程有工程(4)名、编号和地址。
b.在从此数据库基础上编写小应用程序实现以下查询功能:(1)给出为某项工程提供零件的全部供应商名;(2)给出使用某供应商所供零件的全部工程名;(3)给出使用红色零件的工程名;(4)给出住在A地而为不在A地、且不使用红色零件的工程提供零件的供应商名;(5)给出使用某供应商供应的全部零件的工程名。
三、实验步骤1、数据库关系设计E-R图根据任务描述,得到E-R图如下图所示。
2、给出数据模型和关系模式根据E-R图,需要建立S、P、J、SPJ共计4个关系模式来描述整个关系,他们包含:S(SNO,SNAME,CITY),分别代表供应商及其编号、名称、地址,主码为SNO。
P(PNO,PNAME,COLOR),分别代表零件及其编号、名称、颜色,主码为PNO。
J(JNO,JNAME,CITY),分别代表工程及其编号、名称、地址,主码为JNO。
SPJ(SNO,PNO,JNO),代表工程所需零件供应商关系。
3、录入数据SPJSPJ4、建立SQL,录入与查询(1)建立表格CREATE TABLE S( SNAME V ARCHAR (50) NOT NULL,SNO V ARCHAR(50) PRIMARY KEY,CITY V ARCHAR (50) NOT NULL);CREATE TABLE P( PNAME V ARCHAR (50)NOT NULL,SNO V ARCHAR (50) PRIMARY KEY,COLOR V ARCHAR (50)NOT NULL);CREATE TABLE J(JNAME V ARCHAR (50)NOT NULL,JNO VARCHAR(50) PRIMARY KEY,CITY V ARCHAR (50)NOT NULL);CREATE TABLE SPJ(SNO CHAR(50) NOT NULL,PNO CHAR(50) NOT NULL,JNO CHAR(50) NOT NULL);(2)录入信息INSERT INTO S V ALUES ('华为','S1','广东'); INSERT INTO S V ALUES ('小米','S2','上海'); INSERT INTO S V ALUES ('苹果','S3','江苏'); INSERT INTO S V ALUES ('三星','S4','北京');INSERT INTO P V ALUES ('芯片','P1','红'); INSERT INTO P V ALUES ('声卡','P2','绿'); INSERT INTO P V ALUES ('显示屏','P3','黑'); INSERT INTO P V ALUES ('显示屏','P4','蓝'); INSERT INTO P V ALUES ('耳机','P5','红'); INSERT INTO P V ALUES ('外壳','P6','白');INSERT INTO J V ALUES ('P30','J1','南京'); INSERT INTO J V ALUES ('PRO','J2','北京'); INSERT INTO J V ALUES ('GALAXY','J3','新疆'); INSERT INTO J V ALUES ('REDMI','J4','吉林'); INSERT INTO J V ALUES ('HONOR','J5','广东');INSERT INTO SPJ V ALUES ('S2','P2','J1'); INSERT INTO SPJ V ALUES ('S4','P3','J1'); INSERT INTO SPJ V ALUES ('S3','P6','J1'); INSERT INTO SPJ V ALUES ('S2','P1','J2'); INSERT INTO SPJ V ALUES ('S1','P3','J2'); INSERT INTO SPJ V ALUES ('S4','P5','J2'); INSERT INTO SPJ V ALUES ('S4','P2','J3'); INSERT INTO SPJ V ALUES ('S3','P4','J3'); INSERT INTO SPJ V ALUES ('S3','P5','J3');INSERT INTO SPJ V ALUES ('S2','P1','J4');INSERT INTO SPJ V ALUES ('S4','P4','J4');INSERT INTO SPJ V ALUES ('S1','P2','J4');(3)SQL查询1、给出为工程J1提供零件的全部供应商名SELECT DISTINCT SNAMEFROM S,SPJWHERE S.SNO=SPJ.SNO AND JNO=‘J1’;2、给出使用供应商S2所供零件的全部工程名SELECT JNAMEFROM JWHERE JNO IN (SELECT JNOFROM SPJWHERE SNO = ‘S2’);3、给出使用红色零件的工程名SELECT JNAMEFROM JWHERE JNO IN (SELECT JNOFROM SPJ, PWHERE COLOR = ‘红’ AND SPJ.PNO = P.PNO);4、给出住在北京而为不在北京、且不使用红色零件的工程提供零件的供应商名SELECT DISTINCT SNAMEFROM S, P, SPJWHERE S.SNO = SPJ.SNO AND P.PNO = SPJ.PNO AND SCITY = ‘北京’ AND S.CITY != J.CITYAND SPJ.PNO NOT IN(SELECT SPJ.PNOFROM P, SPJWHERE P.PNO = SPJ. PNO AND COLOR = ‘红’ );5、给出使用供应商S3供应的全部零件的工程名SELECT JNAMEFROM JWHERE NOT EXISTS(SELECT *FROM SPJWHERE NOT EXISTS(SELECT *FROM SPJWHERE SNO = ‘S3’);5、用户界面设计采用Delphi 7进行用户界面设计。
数据库原理及应用最全上机实验及实验答案
实验一 SQL Server 2005 的安装和环境介绍一.实验目的与要求:1.掌握SQL Server 2005 服务器的安装方法2.了解SQL Server 2005 的环境3.了解数据库及其对象二.实验准备1.了解SQL Server 2005的版本2.了解SQL Server 2005各版本对硬件和软件的需求三.实验要求1.写出SQL SERVER 2005的功能与特点, 使用方法, 应用状况的报告2.完成SQL SERVER 2005的安装、启动、登录。
四.实验内容1.安装SQL Server 2005实验一 SQL Server 2005 的安装和环境介绍●实验指导——安装SQL Server 20051.根据安装机器软硬件的要求,选择一个合适的版本,以下以开发版为例2.将 SQL Server 2005 DVD 插入 DVD 驱动器。
如果DVD驱动器的自动运行功能无法启动安装程序无法启动安装程序,请导航到 DVD 的根目录然后启动splash.hta。
3.在自动运行的对话框中,单击“运行 SQL Server 安装向导”。
4.在“最终用户许可协议”页上,阅读许可协议,再选中相应的复选框以接受许可条款和条件。
接受许可协议后即可激活“下一步”按钮。
若要继续,请单击“下一步”若要结束安装程序,请单击“取消”。
如下图:5.在“SQL Server 组件更新”页上,安装程序将安装 SQL Server 2005 的必需软件。
有关组件要求的详细信息,请单击该页底部的“帮助”按钮。
若要开始执行组件更新,请单击“安装”。
更新完成之后若要继续,请单击“完成”。
6.在 SQL Server 安装向导的“欢迎”页上,单击“下一步”以继续安装。
7.在“系统配置检查 (SCC)”页上,将扫描安装计算机,以检查是否存在可能妨碍安装程序的条件。
8.在“注册信息”页上的“姓名”和“公司”文本框中,输入相应的信息。
上机习题3、4、5
一、基本操作
(1)略
(2)略
(3)略
(4)将文件夹下Excel文件Test.xls中的数据链接到当前数据库中。要求:数据中的第一行作为字段名,链接表对象命名为Test.xls。
(5)为“bTitle”控件设置阴影效果
(6)在窗体“stfTe”中,以命令按钮“bt1”为基础,调整命令按钮“bt2”和“bt3”的大小与水平位置。要求:按钮“bt2”和“bt3”的大小尺寸与按钮“bt1”相同,左边界与按钮“bt1”左对齐。
(4)创建一个操作查询,将表对象“tStud”中没有书法爱好的学生的“学号”、“姓名”、“年龄”三个字段内容追加到目标表“tTemp”的对应字段内,qT4
三、综合应用
(1)将窗体“fEmp”上文本框“tSS”更改为组合框类型,保持控件名称不变。设置相关属性实现下拉列表形式输入性别“男”和“女”
(2)将窗体对象“fEmp”上文本框“tPa”改为复选框类型,保持控件名称不变,然后设置控件来源属性以输出“党员否”字段值
(4)按照以下窗体功能,补充事件代码设计:
窗体功能,打开窗体单击“计算”按钮,事件过程使用ADO数据库技术计算出表对象“Temp”中党职工的平均年龄,然后将结果显示在窗体的文本框“lAge”内并写入外部文件中。
(5)将宏“mtest”重命名,保存为自动执行的宏。
二、简单应用
(1)创建一个查询,查找女学生的“姓名”、“课程号”和“成绩”三个字段的内容,qT1(2)创建追加查询,将表对象“tsturd”中有书法爱好学生的“学号”、“姓名”和“入校年”三列内容追加到目标表“ttemp”的对应字段内,qT2。(“入校年”列由“入学时间”字段计算得到,显示为四位数字形式。)
模拟题三
一、基本操作
数据库 实验五
数据库实验五在学习数据库的过程中,实验是巩固理论知识、提高实践能力的重要环节。
本次实验五主要围绕数据库的某些关键操作和应用展开,通过实际动手操作,让我们对数据库的理解更加深入和全面。
本次实验的环境是常见的数据库管理系统,如 MySQL 或 SQL Server 等。
实验的目的是让我们熟练掌握数据库的查询、更新、插入和删除等基本操作,同时能够运用这些操作解决一些实际的问题。
实验的第一个任务是进行数据的查询操作。
查询是从数据库中获取所需信息的重要手段。
我们需要根据给定的条件,从数据表中筛选出符合要求的数据。
这就涉及到了使用 WHERE 子句来设定条件,以及各种运算符如等于(=)、大于(>)、小于(<)、不等于(<>)等的运用。
同时,还需要掌握连接(JOIN)操作,将多个相关的数据表连接起来,以获取更全面和准确的信息。
例如,在一个学生成绩管理系统中,要查询某个班级中数学成绩大于 80 分的学生名单,就需要先从学生表中获取班级信息,再从成绩表中筛选出数学成绩符合条件的记录,最后通过学生学号将两个表连接起来,得到最终的结果。
接下来是数据的更新操作。
这包括对已有数据的修改和删除。
在进行更新操作时,必须格外小心,因为一旦操作失误,可能会导致数据的丢失或错误。
在修改数据时,同样要使用 WHERE 子句来指定要修改的记录。
例如,要将某个学生的数学成绩从 80 分修改为 90 分,就需要明确指定该学生的学号或其他唯一标识。
而删除数据则需要更加谨慎,通常建议先进行查询,确认要删除的记录准确无误后,再执行删除操作。
数据的插入操作也是实验的重要部分。
插入新的数据可以增加数据库的信息量。
在插入数据时,需要注意数据的类型和格式要与数据表的定义相匹配。
比如,一个学生信息表中,学号是整数类型,姓名是字符串类型,出生日期是日期类型,如果插入的数据类型不正确,就会导致插入失败。
在实验过程中,我也遇到了一些问题和挑战。
比如,在进行复杂的查询操作时,由于条件设置不当,导致查询结果不准确。
数据库上机实验(二)
数据库上机实验(二)第一篇:数据库上机实验(二)数据库上机实验内容及要求(第二部分)1.建立工厂管理数据库工厂(包括厂名和厂长名)需要建立一个管理数据库存储以下信息:(1)一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和联系电话;(2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种;(3)一个车间生产多种产品,产品有产品号和价格;每种产品只能由一个车间生产;(4)一个车间制造多种零件,一种零件也可能为多个车间制造。
零件有零件号、重量和价格;(5)一种产品可由多种零件组成,一种零件也可以装配出多种产品;(6)产品和零件均存入仓库;(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
根据以上需求分析结果,按照下述要求,设计并建立工厂管理数据库。
υ分析实体及联系,设计E-R图。
υ将E-R图转换成关系模式,并规范化到3NF。
υ在Microsoft SQL Server2000中基于“企业管理器”建立数据库及相关对象(主码,外码,索引,约束等)。
υ测试数据入库2.基于“查询分析器”,完成并保存下述题目的SQL脚本(1)建立“工种”是“钳工”的所有职工详细信息的视图;(2)建立“车间号”是“CJ01”的钳工详细信息的视图;(3)建立使用了“零件号”是“LJ0002”的所有产品详细信息的视图;(4)查询使用了“零件号”是“LJ0002”的产品的生产车间号;(5)对零件表按照“零件号”建立唯一索引;(6)对职工表按照“性别”建立聚簇索引;(7)查询“车间主任姓名”是“赵平”的“车间地址”和“联系电话”;(8)查询“职工号”是“ZG0001”的职工所在车间的“车间主任姓名”和“联系电话”;(连接查询实现)(9)查询“产品号”是“CP0001”的产品的生产车间的“车间主任姓名”和“联系电话”;(嵌套查询实现)(10)查询使用了“零件号”是“LJ0002”的所有产品的“产品号”,且查询结果按照“零件数量”降序排列;(11)查询使用了“零件号”是“LJ0002”的所有产品的“产品号”和“产品价格”;(12)查询使用了“零件号”是“LJ0002”的所有产品的生产车间的“车间主任姓名”和“联系电话”;(13)查询使用了“零件号”是“LJ0002”的产品数;(14)查询“LJ0002”号零件装配产品的使用总量;(15)查询使用了3种以上零件的产品号;【注意】:下机时保存数据库文件(.mdf和.ldf)及SQL脚本文件到U盘。
数据库系统原理上机实验
数据库系统原理上机实验实验1数据库系统及数据库基础操作1、实验目的1)熟练掌握SQL Server的使用方法。
2)理解和掌握数据库DDL语言,能够熟练地使用SQL DDL语句创建、修改和删除数据库、模式和基本表。
2、实验主要内容1)安装SQL Server集成环境。
2)理解和掌握SQL DDL语句的语法,特别是各种参数的具体含义和使用方法;使用SQL语句创建、修改和删除数据库和基本表。
掌握SQL语句常见语法错误的调试方法。
3、设备要求1)PC一台实验2 SQL语言—SELECT查询操作1、实验目的要求1)掌握SQL程序设计基本规范,熟练运用SQL语言实现数据基本查询,包括单表查询、分组统计查询和连接查询。
2)掌握SQL嵌套查询和集合查询等各种高级查询的设计方法等。
2、实验主要内容1)针对SQL Server数据库设计各种单表查询语句、分组统计查询语句;设计单个表针对自身的连接查询,设计多个表的连接查询。
理解和掌握SQL查询语句各个子句的特点和作用,按照SQL程序设计规范写出具体的SQL查询语句,并调试通过。
2)针对SQL Server数据库,正确分析用户查询要求,设计各种嵌套查询和集合查询。
3、实验仪器设备1)学生每个一台PC机2)已安装SQL Server环境实验3SQL语言—更新操作、视图、索引等操作1、实验目的要求1)熟悉数据库的数据更新操作,能够使用SQL语句对数据库进行数据的插入、修改、删除操作。
2)熟悉SQL语言有关视图的操作,能够熟练使用SQL语句来创建需要的视图,定义数据库外模式,并能使用所创建的视图实现数据管理。
3)掌握索引设计原则和技巧,能够创建合适的索引以提高数据库查询。
2、实验主要内容1)针对SQL Server数据库设计单元组插入、批量数据插入、修改数据和删除数据等SQL语句。
理解和掌握INSERT、UPDATE和DELETE语法结构的各个组成成分,结合嵌套SQL子查询,分别设计几种不同形式的插入、修改和删除数据的语句,并调试成功。
数据库上机实验报告
数据库上机实验报告
本次数据库上机实验主要涉及到数据库的设计、创建和查询,通过对实验内容的学习和实践,我对数据库的相关知识有了更深入的理解和掌握。
首先,我们学习了数据库的设计原理和方法。
在数据库设计的过程中,需要考虑到数据的完整性、一致性和安全性等因素,通过对实际案例的分析和设计,我了解到了如何根据需求确定实体、属性和关系,并进行逻辑设计和物理设计。
在实验中,我使用了ER图和关系模式图等工具,对数据库的结构和关系进行了清晰的描述和设计。
其次,实验中我们学习了数据库的创建和管理。
通过使用SQL语句,我成功创建了数据库和表,并进行了数据的插入、修改和删除操作。
在实验过程中,我深入了解了SQL语句的语法和用法,掌握了如何利用SQL语句对数据库进行有效的管理和操作。
最后,我们进行了数据库的查询操作。
通过学习和实践,我掌握了SQL语句中的SELECT语句的用法,能够实现对数据库中数据的查询和统计。
在实验中,我通过编写SQL语句,成功实现了对数据库中数据的查询和分析,对于复杂的查询需求也能够进行有效的处理和实现。
通过本次数据库上机实验,我不仅加深了对数据库设计、创建和查询的理解,还提高了对SQL语句的掌握和运用能力。
我相信这些知识和技能对我的未来学习和工作都将有很大的帮助。
总的来说,本次数据库上机实验内容丰富、操作性强,通过实际操作和实践,我对数据库的相关知识有了更深入的理解和掌握。
我相信这些知识和技能对我的未来学习和工作都将有很大的帮助。
希望通过不断的学习和实践,能够进一步提高自己的数据库技能,为将来的工作做好准备。
数据库上机实验
附录C上机实验C.1第4章上机实验下列实验均使用SQL Server的SSMST具实现。
1. 用图形化方法创建符合如下条件的数据库(创建数据库的方法可参见本书附录A): 数据库名为:学生数据库主要数据文件的逻辑文件名为:Students_data ,存放在D:\Data文件夹下(若D:盘中无此文件夹,请先建立此文件夹,然后再创建数据库。
),初始大小为:5MB 增长方式为自动增长,每次增加1MB日志文件的逻辑文件名字为:Students」og ,也存放在D:\Data文件夹下,初始大小为:2MB增长方式为自动增长,每次增加10%2•选用已建立的“学生数据库”,写出创建满足表C-1到4-4条件的表的SQL语句,并执行所写代码。
(注:“说明”部分不作为表定义内容)表C-4Teacher表结构3. 写出实现如下功能的SQL语句,并执行所写代码,查看执行结果。
(1)在Teacher表中添加一个职称列,列名为:Title ,类型为nchar(4)。
(2)为Teacher表中的Title列增加取值范围约束,取值范围为:{教授,副教授,讲师}。
(3)将Course表中Credit列的类型改为:tinyint 。
(4)删除Student表中的Sid和Sdate列。
(5)为Teacher表添加主键约束,其主键为:Tno。
C.2第5章上机实验本实验均在SQL Server的SSMS工具中实现。
首先在已创建的“学生数据库”中创建本章表5-1~5-3所示的Student、Course和SC表,并插入表5-4~5-6所示数据,然后编写实现如下操作的SQL语句,执行所写的语句,并查看执行结果。
1. 查询SC表中的全部数据。
2. 查询计算机系学生的姓名和年龄。
3. 查询成绩在70〜80分的学生的学号、课程号和成绩。
4. 查询计算机系年龄在18〜20岁的男生姓名和年龄。
5. 查询C001课程的最高分。
6. 查询计算机系学生的最大年龄和最小年龄。
数据库上机实验报告
数据库上机实验报告实验名称:数据库上机实验报告实验目的:通过在数据库环境下进行上机实验,掌握数据库的基本操作和SQL语言的使用。
实验内容:1. 创建数据库首先创建一个数据库,可以使用MySQL、Oracle或其他数据库管理系统的命令行或可视化工具创建。
命名为“example”。
2. 创建表在“example”数据库中创建一个新表,表名为“students”。
定义表结构,包括学生的学号、姓名、性别、年龄、班级等字段。
3. 插入数据向“students”表中插入若干条学生数据,包括学号、姓名、性别、年龄、班级等信息。
4. 查询数据使用SQL语句查询“students”表中的数据,例如查询年龄小于20岁的学生、查询班级为一班的学生等。
5. 更新数据使用SQL语句更新“students”表中的数据,例如将年龄小于18岁的学生的班级改为2班。
6. 删除数据使用SQL语句删除“students”表中的数据,例如删除性别为女的学生、删除班级为三班的学生等。
7. 关闭数据库使用命令或可视化工具关闭数据库连接。
实验步骤:1. 打开MySQL命令行或可视化工具,创建名为“example”的数据库。
2. 通过CREATE TABLE语句在“example”数据库中创建名为“students”的表,并定义表结构。
3. 使用INSERT INTO语句向“students”表中插入学生数据。
4. 使用SELECT语句查询“students”表中的数据。
5. 使用UPDATE语句更新“students”表中的数据。
6. 使用DELETE语句删除“students”表中的数据。
7. 关闭MySQL连接。
实验结果:1. 创建“example”数据库成功。
2. 创建“students”表成功,包括学生的学号、姓名、性别、年龄、班级等字段。
3. 成功插入若干条学生数据。
4. 成功查询“students”表中的数据,符合查询条件的学生数据被正确显示。
数据库上机实验五
实验五SQL语言综合实验一、实验目的利用SQL语言的9个动词以及相关语法解决综合问题;体会SQL语言在数据库系统设计、实现过程中的作用。
二、实验内容及步骤特别说明:实验过程中所有的SQL语句的都需要保存到一个word文件或文本文档中,实验结束前需将SQL语句粘贴到网络课程中提交;数据库文件需分离后压缩提交FTP。
以下操作均在查询分析器中实现:1、建立以dbszh+“学号”命名的数据库,如dbszh101 //设1班01号学生。
2、在第一步建立的数据库中建立S,C,SC基本表❖S(sno,sname,sex,bdate,height) 030920311 王义平男1984-08-20 1.71 ❖C(cno,lhour,credit,semester) cs-201 80 4 秋❖Sc(sno,cno,grade) 030920311 cs-201 80.0各字段数据类型请参考示例元组设定,定义S表的主码为sno,定义C表的主码为cno,定义SC表的主码为(sno,cno),定义sno为SC表的外码,定义cno为SC表的外码。
3、修改基本表(1)在C表中增加一个新的属性“cname”,char(8)型,允许为空值。
(2)将C表中的cname属性类型改为char(20)型。
(3)删除C表中的cname属性。
4、建立索引(1)在SC表的多个字段建立索引,以“INDEX+自己的学号”命名索引名(如:index101),先按学号升序索引,然后按成绩降序索引。
(2)删除刚才建立的索引。
5、更新数据(1)利用INSERT语句插入元组:S表中:030920311 王义平男1984-08-20 1.71050620312 张三男1984-04-20 1.9“你的学号”“你的姓名”“你的性别”“你的出生日期”“你的身高”C表中:(课程号cno值的前两位表示开课系)cs-201 80 4 秋cs-202 60 4 春dj-101 30 2 秋Sc表中:030920311 cs-201 75“你的学号”cs-202 68“你的学号”dj-101(2)利用UPDATE修改元组将SC表中你自己的成绩都改为90分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四:
一、实习目的:
掌握SELECT的基本使用格式,能使用SQL Server对表作简单的查询。
二、准备:
1.复习3.4节中SELECT的基本使用格式;
2.复习SQL中五种集函数:AVG、SUM、MAX、MIN、COUNT;
3.完成习题3第12题中各项操作的SQL语句。
三、实习内容:
1.验证习题3第12题中各项操作的SQL语句。
2.验证以下语句是否正确:
SELECT eno,basepay,service
FROM salary
WHERE basepay<AVG(basepay);
四、实验报告:
1.1)找出所有被学生选修了的课程号:
select distinct Cno 课程号from Grade
2)找出01311班女生的个人信息:
select * from Student
where Clno='01311' and Ssex='女'
3)找出01311班和01312班的学生姓名性别出生年份
select sname 学生姓名,ssex 性别,2016-sage 出生年份
from Student
where Clno='01311' or Clno='01312'
4)找出所有姓李的学生的个人信息
select * from Student
where Sname like '李%
'5)找出李勇所在班级的学生人数
select COUNT(*) from Student
where Clno in
(select Clno from Student
where Sname='李勇')
6)找出课程名为操作系统的平均成绩最高分最低分
select AVG(Gmark) 平均成绩,MAX(Gmark) 最高分,MIN(Gmark) 最低分
from Grade
where Cno in
(select Cno from Course
where Cname='操作系统')
7)选修了课程的学生人数;
select COUNT(distinct sno) 学生人数from
Grade
8)选修了操作系统的学生人数:
select COUNT(distinct sno) 学生人数
from Grade
where Cno in
(select Cno from Course
where Cname='操作系统')
9)找出2000级计算机软件班的成绩为空的学生姓名:
2.错误。
AVG(basepay)前后缺少,正确的SQL语言应该是:SELECT eno,basepay,service
FROM salary
WHERE basepay<SELECT AVG(basepay) FROM salary>
五、思考题:
在表的名字较长时,使用别名可以使编码的查询更容易。
比如遇到子查询,就基本上都需要别名。
而且一旦用了别名就一定要使用该别名。
实验五:
一、实习目的:
掌握SELECT语句的嵌套使用方法,使用SQL Server 2000对表作复杂查询。
二、实习准备:
1)复习SELECT语句的高级格式和完整格式的使用;
2)了解库函数在分组查询中的使用规则;
3)完成习题3第13/14题中各项操作的SQL语句。
三、实习内容:
验证习题3第13/14题中各项操作的SQL语句。
四、实验报告:
①13、1)找出和李勇在同一个班级的学生信息:
select * from Student
where Sname<>'李勇' and Clno in
(select Clno from Student
where Sname='李勇')
2)找出所有与学生李勇有相同选修课程的学生信息:3)找出年龄介于学生李勇和25岁之间的学生信息:select * from Student
where Sage < 25 and Sage >
(select Sage from Student where Sname='李勇')
4)找出选修了课程是操作系统的学生学号和姓名:
select Sno 学号,Sname 姓名from Student
where exists
(select * from Grade
where Cno in(select Cno from Course where Cname='操作系统')
and Student.Sno=Grade.Sno)
5)找出没有选修1号课程的所有学生姓名:
select Sname 姓名from Student
where not exists
(select * from Grade
where Student.Sno=Grade.Sno and Cno=1)
6)找出选修了全部课程的学生姓名:
select Sname 姓名from Student
where not exists
(select Cno from Course
except
select Cno from Grade
where Student.Sno=Grade.Sno)
14、1)查询选修了3号课程的学生学号及成绩,并按成绩的降序排列:select Sno 学号,Gmark 成绩from Grade
where Cno=3
order by Gmark desc
2)查询全体学生信息,要求查询结果按班级号升序排列,同一班级学生按年龄降序排列:
select * from Student
order by Clno asc,Sage desc
3)求每个课程号及相应的选课人数:
select o 课程号,COUNT(o) 选课人数from Grade join Course on o=o group by o
4)查询选修了3门以上课程的学生学号:
select Sno 学号from Grade
group by Sno
having COUNT(Sno)>3
②使用存在量词[NOT]EXISTS的嵌套查询时,何时外层查询的WHERE 条件为真,何时为假:
使用存在量词[NOT]EXISTS,若内层的查询结构非空,那么外层的WHERE字句返回真值,否则返回假值。
五、思考题:
1)用UNION或UNION ALL将两个SELECT命令结合为一个时,结果有何不同?
在合并结果集时,默认从最后结果集中删除重复的行,除非使用ALL 关键字。
2)当既能用连接词查询又能用嵌套查询时,应选择哪种查询较好?为什么?
有些嵌套查询可以用连接运算代替,而有些是不能的。
当可以代替时,用户可以自行决定。
3)库函数能否直接使用在SELECT选取目标、HAVING字句、WHERE 字句、GROUP BY列名中?
SELECT选取目标、HAVING字句可以直接使用,
而WHERE字句、GROUP BY不能直接使用。