电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

SQL实验四_SQL的数据更新

来源:开心麻花作者:开心麻花2025-09-191

SQL实验四_SQL的数据更新(精选10篇)

SQL实验四_SQL的数据更新 第1篇

实验

四、数据更新

1、实验目的熟悉数据库的数据更新操作,能够使用SQL语句对数据库进行数据的插入、更新、删除操作。

2、实验内容

 在本实验中,主要内容是如何用SQL语句对数据进行更新。

 使用INSERT INTO语句插入数据,包括插入一个元组或将子查询的结果插入到数据库中两种方式。

 使用UPDATE语句可以修改指定表中满足WHERE子句条件的元组,有三种修改的方式:修改某一个元组的值;修改多个元组的值;带子查询地修改语句。

 使用DELETE语句删除数据:删除某一个元组的值;删除多个元组的值;带子查询地删除语句。

3、实验步骤

在数据库University_Mis上按下列要求进行数据更新。

(1)使用SQL语句向Students表中插入元组(Sno:S78;Sname:李迪;Semail:LD@zjut.edu.cn;Scredit:0;Ssex:男)。

(2)对每个课程,求学生的选课人数和学生的平均成绩,并把结果存入。

(3)在Students表中使用SQL语句将姓名为李迪的学生的学号改为S70。

(4)在Teachers表中使用SQL语句将所有教师的工资加500元。

(5)将姓名为刘华的学生的课程“数据库原理及其应用”的成绩加上6分。

(6)在Students表中使用SQL语句删除姓名为李迪的学生信息。

(7)删除所有选修课程JAVA的选修课记录。

(8)对Courses表做删去学分<=4的元组操作,讨论该操作所受到的约束。

SQL实验四_SQL的数据更新 第2篇

实验时间:2014年4月29日

实验名称:T-SQL、存储过程、触发器

实验目的:

1、掌握T-SQL常量、变量、运算符、表达式、函数的使用方法

2、掌握T-SQL流程控制语句使用方法

3、掌握存储过程创建及使用方法

4、理解触发器的创建及使用方法

实验原理:

T-SQL,即Transact SQL,是微软对SQL标准的一种实现。存储过程可以预编译T-SQL并保存在数据库系统中,与直接发送SQL相比,加快了数据处理速度。触发器可以在数据修改时自动运行,保证更有效地实施数据完整性。

仪器与材料:

装有Windows操作系统、SQL Server数据库系统的PC机一台

实验步骤:

1、加载示例数据库

2、定义一个字符串变量和一个整型变量,赋值后再输出查看运行结果

3、使用全局变量查看SQL Server版本信息

4、定义字符串变量保存身份证号,使用函数取出其表示的年月日信息并逐个输出

5、创建函数计算全体学生某门课程平均成绩

6、求1+2+„„+100的和

7、创建存储过程使用“学生基本信息表”查询学生数量

8、创建触发器,实现功能:当“学生基本信息表”中数据被删除时提示“不允许修改学生基本信息”

实验记录:

„„

讨论及问题回答:

SQL实验四_SQL的数据更新 第3篇

关键词:触发器,数据完整性,级联更新

0 引言

数据库完整性就是保证数据库中数据的正确性和一致性。其中正确性指数据要符合语义规范,数据定义在规范的有效范围内;一致性是指数据库中所表示的同一事物的数据应当一致。在SQL Server中数据库完整性主要有约束来定义,约束定义了必须遵循的用于维护数据一致性和正确性的有效性规则。简单的完整性要求可以在定义基本表时通过创建约束来实现,但如果想要实现更为复杂的数据完整性要求,比如依据数据表的变化实现数据的自动级联更新等,这就需要用触发器来完成了。本文浅析了在SQL Server中通过触发器实现数据库完整性的原理,并结合一个实例分析了使用触发器实现级联更新的一般过程。

1 触发器概述及其工作原理

触发器是SQL Server数据库的重要工具,可以被看作是一种特殊的存储过程。一般的存储过程通过存储过程名称被调用执行,而触发器是通过数据库事件的触发而被执行,在对触发器所监控的表执行添加、修改或删除操作时触发器被触发。触发器的过程体中可以包含复杂的SQL语句,因此触发器可以实现比约束更加复杂的数据完整性要求。

在SQL Server 2005中有两种触发器:DDL触发器和DML触发器。DDL触发器是被数据定义语句(DDL)所触发而被调用的触发器;DML触发器是被数据操作语句(DML)所触发而被调用的触发器。数据完整性规则主要由DML触发器创建,因此本文主要讨论DML触发器。由于触发器被激活后所执行的操作不同,SQL Server中包含两种触发方式:After触发方式和Instead Of触发方式。After触发方式是比较常用的触发方式(另有一种For触发方式与After相同,是为与SQL Server早期版本兼容的可选项),这种触发方式的触发器在进行数据操作以后被触发,先执行了触发语句(插入、更新、删除),然后执行了触发器。INSTEAD OF触发方式在数据发生变化之前被触发,停止触发语句(插入、更新、删除)的执行,直接执行触发器定义的内容。

本文将以After触发器为例来讲述使用触发器实现数据库级联更新。其创建语法格式如下:

在实际应用中,SQL Server为每个触发器都创建了两个专用表:Inserted表和Deleted表,当触发器被执行时产生。这是两个逻辑表,存放于内存中,表的结构与被触发器作用的表的结构相同且由系统自动创建和撤销。

当执行Insert语句时,Inserted表中保存要向表中插入的所有行。

当执行Delete语句时,Deleted表中保存要从表中删除的所有行。

当执行Update语句时,相当于先执行一个Delete操作,再执行一个Insert操作。

2 触发器应用案例

下面我们以淘宝某网店数据表为例讨论一下使用触发器实现数据表的级联更新。

我们知道在商品购物页面点击立即购买后,虽然我们还没有付钱但是这就表示我们和商家之间已经生成了一个订单。那么其他人再打开此商品的购买页面时,页面上显示的库存数量就应该更新为新的库存数量了。其实这个过程就是通过触发器更新数据表来实现的。

在淘宝网站的后台,买家购买了某商品后就会生成一个新的订单,也就是说在订单表中会插入一条新的记录来表示这个新订单,其中就包含了订单编号、商品编号、商品价格、购买数量等信息。同时在库存表中被购买商品的库存数量也应该被更新为原来的库存数量减去购买数量从而生成新的库存数量。这个过程的实现就被称为数据表的级联更新,所谓级联更新也叫联动更新,指当我们修改了一个数据表中的某些数据,系统会自动去修改另一个数据表相应数据。

首先我们先要在订单表上建立一个insert触发器用于响应对订单表的插入操作。当我们点击立即购买后,系统会生成一个新的订单,然后把新订单的数据插入到订单表中,同时也会触发insert触发器这样订单数据也会同步插入到inserted表中,然后会执行这个触发器。那么我们就可以在这个触发器中定义一个更新操作,去同步更新库存表,让库存量跟新为新的库存量。

可以看到经过这个触发器的执行,用户在下订单的同时商品的库存数量也被相应的修改为新的库存数量。

3 结束语

在数据库的应用中,触发器起到了非常重要的作用。它是保证数据完整性的重要补充工具,它可以很容易的实现表间操作所引发的数据的级联更新从而能够更好的保证数据的完整性,帮助用户实现满足企业需求的规则,使得数据库系统更加方便、高效和安全。

这篇文章结合具体的实例讨论了DML触发器的工作原理和实现数据表级联更新的方法。结果表明应用触发器不仅可以处理表与表之间复杂的逻辑关系,优化数据库的设计,更好地维护数据库中数据的完整性;同时还可以实现由于数据修改而引发的相关数据的自动级联更新操作,从而更安全高效的完成数据更新,避免了人工操作带来的安全隐患,提高了整体数据库系统的安全性能。

参考文献

[1]王珊,萨师煊.数据库系统概论(第4版)[M].北京:高等教育出版社,2006.

[2]罗运模,王珊.SQL Server数据库系统基础[M].北京:高等教育出版社,2003.

[3]张益星.SQL Server 2000触发器技术及应用[J].信息技术,2005(10):69-70.

[4]徐国华,白凤娥.数据库中的触发器技术[J].太原大学学报,2006(3):64-65.

SQL实验四_SQL的数据更新 第4篇

关键词 SQL 数据库 财经类课程 软件

中图分类号:TP3 文献标识码:A

实验实训室是院校培养学生实践能力的最佳途径,因此,实训室的设备环境搭建对于一个高校来说是有其非凡的意义。实训室分为很多种,其中一种由于要承担多个专业、多门课程的教学任务,被称为综合实训室。在综合实训室中,由于各门课程教学所需的软件种类和版本不尽相同,所以,在对这样实训室进行教学系统搭建时,就需要安装多种以及多版本的实训软件,这就很容易造成软件之间挤兑,比如,在一台电脑上安装财金类的课程软件U8或者K3的时,如果这台电脑又安装了计算机类的课程软件SQL2005数据库,这时候就会因为出现数据库的冲突而无法安装,这个问题,网上没有一个比较系统的解决方法,希望我这篇文章可以帮助有同样疑惑的软件安装着。

1冲突的根本问题

其实,财金类课程软件U8和K3与SQL2005的冲突,主要是因为U8和K3需要SQL2000数据库的默认实例安装,抓住这一点,那所有问题就迎刃而解了。

2解决根本问题的方法

上面我们已经找到了问题的根源其实就是安装时一些选项的选择和设置问题,那么,下面我们就这个问题,提出了两点解决方案。

(1)默认实例法

具体步骤如下:

步骤一:安装时先装SQL2000,不过在安装到“实例名”选项时,这里要选择“默认”实例名,如图2-1-1,接着默认安装,到了“服务账户”选项时选择“使用本地系统账户”,如图2-1-2,然后默认选择“下一步”,到身份验证模式中选择关联软件所需的验证模式进行安装就可以了。

步骤二:SQL2000数据库软件装好后,接着就是安装SQL2005数据库了。首先,运行安装程序,一直默认点击“下一步”进行安装,到了安装组件选择界面,选择好需要安装的组件后,点击“下一步”到“实例名”选项。这里特别注意,由于安装SQL2000数据库时选择了默认实例,所以这里安装就必须选择“命名实例”,并且给它命名,如图2-2-1。

安装到了这里,剩余的步骤就可以参照“步骤一”的设置或者参照安装文档设置安装就行了。

步骤三:这两个软件装好后,接下来就可以安装财金类的用友U8或者金碟K3的其他插件和主程序了。

以上是以先安装SQL2000数据库为例进行的安装讲解,如果你想先安装SQL2005数据库,然后才安装用友U8或者金蝶K3所需的SQL 2000数据库软件,那么,你的安装步骤就得从步骤二开始,并且安装到了“实例名”选项时,依旧要用“命名实例”安装;如果你已经装好了SQL 2005数据库,那么,你只能用后面讲到的“虚拟机安装法”来安装,总之不管你先安装哪个数据库,“默认实例”都必须留给用友U8或者金碟K3所关联的数据库。

(2)虚拟机安装法

如果使用“虚拟机安装法”,那么在主体机上安装的SQL数据库软件就可以不受“实例名”的限制,可任意實例名安装,然后把需要“默认实例名”设置的软件安装在虚拟机中。比如,在本文中,可以把SQL 2005数据库安装在主体机上,把需要使用“默认实例名”安装数据库SQL 2000的用友U8或者金蝶K3安装在虚拟机中。

3两种方法的对比

“默认实例法”是将SQL 2000数据库与SQL 2005数据库软件安装在同一台计算机上,那么,这种方法带来的效果是SQL 2005数据库也可以使用SQL 2000数据库安装所带的“SQL Server服务管理器”对其数据库服务进行管理,如图3-1-1,而SQL 2000数据库也能使用SQL 2005数据库附带的“Microsoft SQL Server Management Studio”工具进行数据库的各种操作,如图3-1-2,不过这种方法对于不太熟悉数据库的人就比较容易将两个数据库服务搞混,而“虚拟机安装法”是将比较复杂的用友U8或者金蝶K3安装在虚拟机中,这个方法就需要比较大的磁盘空间,至于孰好孰坏就看各人的使用习惯了。

SQL实验四_SQL的数据更新 第5篇

假设a,b两表有外键关联,想要从b表中取出相应字段的值更新a表

字段,可以有如下几种写法:

1、update a set a.name=b.name from a,b where a.id=b.id2、update a inner join b on a.id=b.id set a.name=b.name where ...3、update table1 set a.name = b.name from table1 a inner join table2 b on a.id =b.id where...

SQL数据库实验报告 实验二 第6篇

1.实验目的(1)了解SQL Server 数据库的逻辑结构和物理结构的特点。

(2)掌握使用SQL Server管理平台对数据库进行管理的方法。

(3)掌握使用Transact-SQL语句对数据库进行管理的方法。

2.实验内容及步骤

(1)在SQL Server管理平台中创建数据库。

① 运行SQL Server管理平台,在管理平台的对象资源管理器中展开服务器。

② 右击“数据库”项,在快捷菜单中选择“新建数据库”菜单项。在新建数据库对话框的数据库名称文本框中输入学生管理数据库名studentsdb,单击“确定”按钮。

(2)选择studentsdb数据库,在其快捷菜单中选择“属性”菜单项,查看“常规”、“文件”、“文件组”、“选项”、“权限”和“扩展属性”等页面。

(3)打开studentsdb数据库的“属性”对话框,在“文件”选项卡中的数据库文件列表中修改studentsdb数据文件的“分配的空间”大小为2MB。指定“最大文件大小”为5MB。修改studentsdb数据库的日志文件的大小在每次填满时自动递增5%。

(4)单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL语句CREATE DATABASE创建studb数据库。然后通过系统存储过程sp_helpdb查看系统中的数据库信息。

(5)在查询设计器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。

(6)在查询设计器中为studb数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。

(7)使用SQL Server管理平台将studb数据库的名称更改为student_db。

(8)使用Transact-SQL语句DROP DATABASE删除student_db数据库。

3.实验思考

(1)数据库中的日志文件是否属于某个文件组?

(2)数据库中的主数据文件一定属于主文件组吗?

(3)数据文件和日志文件可以在同一个文件组吗?为什么?

(4)删除了数据库,其数据文件和日志文件是否已经删除?是否任何人都可以删除数据库?

数据库实验报告 SQL语言 第7篇

实验6 视图

实验目的:1)掌握交互式创建、删除视图的方法

2)掌握使用SQL创建、删除视图的方法

3)掌握交互式更新视图的方法

4)掌握使用SQL更新视图的方法 实验内容

6.1实验题目:创建视图

实验过程:1)交互式创建视图VIEW_S

2)交互式创建成绩视图VIEW_SCORETABLE

3)使用SQL创建课程表视图VIEW_CTABLE

实验结果:

6.2实验题目:修改视图

实验过程:1)使用交互式方法把视图VIEW_S中的字段SNO删掉

2)使用SQL为视图VIEW_CTABLE增加一个课时字段CT tiny int

实验结果:

6.3实验题目:通过视图修改数据库数据

实验过程:1)交互式通过修改视图VIEW_S中的数据来实现对其基本表S中数据的修改

2)对视图VIEW_S执行INSERT语句,查看此视图的基本表S中数据的变化

3)修改视图VIEW_S的定义,使其包含表S中的主键,再执行插入操作

4)用SQL语句对视图VIEW_S执行DELETE操作,查看此视图的基本表S中数据的变化 实验结果:

6.4实验题目:删除视图

实验过程:1)交互式删除视图VIEW_S

2)使用SQL删除视图VIEW_CTABLE

实验结果:

实验7 数据查询

实验目的:1,掌握从简单到复杂的各种数据查询。包括,单表查询、多表连接查询、嵌套查询、集合查询。

2,掌握用条件表达式表示检索结果。

3,掌握用聚合函数计算统计检索结果。实验7.1 单表查询

实验目的:1,掌握指定列或全部列查询。

2,掌握按条件查询。

3,掌握对查询结果排序。

4,掌握使用聚集函数的查询。

5,掌握分组统计查询。实验内容:1,指定或全部列查询。

2,按条件查询及模糊查询。

3,对查询结果排序。

4,使用聚集函数的查询。

5,分组统计查询。

实验7.2 连接查询 实验目的:掌握设计一个以上数据表的查询方法。多表之间的连接包括等值连接、自然连接、非等值连接、自身连接、自身连接、外连接和复合连接。

实验内容:1,连接查询,查询所有选课学生的学号、姓名、选课名称及成绩。

查询每门课程的课程号、任课教师姓名及其选课人数。

2,自身连接,查询所有比刘伟工资高的的教师的姓名、工资及刘伟的工资。

查询同时选修了程序设计和微机原理的学生的姓名、课程号。

3,外连接,查询所有学生的学号、姓名、选课名称及成绩(没有选课的学生的选课信息显示为空)

实验结果

实验7.3 嵌套查询

实验目的:掌握嵌套查询使我们可以用多个简单查询构成复杂的查询。从而增强了SQL的查询能力。

实验内容:1,返回一个值的子查询,查询与刘伟教师职称相同的教师号、姓名和职称。

2,返回一组值的子查询,使用ANY谓词查询讲授课程号为C5的教师姓名。使用IN谓词查询讲授课程号为C5的教师姓名。使用ALL谓词查询其他系中比计算机系所有教师工资都高的教师的姓名、工资、使用EXISTS谓词查询没有讲授课程号为C5的课程的教师姓名、所在系.使用NOT EXISTS谓词查询至少选修了学生S2选修的全部课程的学生的学号。实验结果

实验7.4 集合查询

实验目的:掌握使用UNION操作符将来自不同查询但结构相同的数据集合组合起来,形成一个具有综合信息的查询结果。

实验内容:查询年龄不大于19岁或者属于计算机系的学生,步骤如下:打开新建查询窗口,创建SQL语句。执行语句。

实验结果

实验十.T-SQL程序设计与游标设计

实验目的

掌握Transact-SQL语言及其程序设计的方法 掌握T-SQL游标的使用方法

实验10.1 T-SQL程序设计逻辑 实验目的

掌握T-SQL程序设计的控制结构及程序设计逻辑 实验内容

(1)计算1~100之间所有能被3整除的数的个数和总和。

(2)从学生表S中选取SNO,SN,SEX,如果为“男”则输出M,如果为“女”则输出F。实验 10.2 面向复杂T-SQL程序设计 实验目的

掌握面向复杂应用的T-SQL程序设计方法。实验内容

(1)从教学数据库jxsk中查询所有同学选课成绩情况:姓名,课程名,成绩。要求:凡成绩为空者输出“未考”;小于60分的输出“不及格”;60~70分的输出“及格”;70~80分的输出“中”;80~90分输出“良好”;90~100分输出优秀。并且输出记录按照下面要求排序:先按SNO升序,再按CNO升序,最后按成绩降序。

(2)现给教师增加工资。要求:必须任两门以上课程且涨幅按总收入分成三个级别:4000元以上涨300;3000元以上涨200;3000元以上涨100。只任一门课程的涨50.其他情况不涨。

实验 10.2 使用游标 实验目的

学习和理解关系数据中游标的概念和设计思想。掌握使用T-SQL游标处理结果集的方法。实验内容

针对数据库jiaoxuedb,进行下面的实验:

SQL实验四_SQL的数据更新 第8篇

2.1 需求分析

为了设计出合理的实验室管理软件, 需要了解实验管理员、实验教师以及实验学员不同人群的需求, 通过对上述人员的调查分析, 笔者了解到实验室管理软件需要具备三大模块 (如图1所示) 。第一, 实验项目的管理。能够实现便捷的选择、编辑、实验项目, 通过智能选择, 无须实验教师讲解, 学员能便捷清楚了解实验的目的。第二, 实验客观条件选择。为便于实验室管理员的实验室管理, 对实验信息统计、存储, 需要设计本环节, 主要记录时间、地点、人物以及设备信息, 当出现问题时便于追查。第三, 实验内容记录。学员通过实验, 记录相应的实验过程、实验结果、实验结论及实验数据, 并能够随时调用数据观察数据波形, 最后生成实验报告。

2.2 开发流程

根据需求分析, 设计者基本上掌握了软件要素, 形成了总体方案、需求分析、模块化设计、代码编写、软件测试、软件试用、推广应用六部分的设计思想。管理软件开发流程如图2所示。

3 软件设计

3.1 模块设计

3.1.1 实验项目模块设计

实验项目包括实验列表编辑及实验项目生成两部分, 模块情况如图3所示。实验列表编辑中有列表框1个, 按钮4个;实验项目生成中有文本编辑框2个。实验项目模块主要借助Matlab语言利用GUI界面编程实现实验基本文字信息的处理, 包括实验项目的调入、显示、选择、保存、新建、删除等功能。

3.1.2 客观条件模块设计

客观条件模块包含时间、地点、人物、设备几大要素, 模块情况如图4所示。

在编程过程中主要关注以下几点。

第一, 实验日期。实验日期包括开始日期和结束日期, 每个时间点设置年、月、日3个下拉框, 编程方法类似, 在CALLBACK函数程序代码中主要调用set (handles.popupmenu_××, 'Value', get (h Object, 'Value') ) 命令完成 (“××”分别用年、月、日替代) 。注意实验结束时间一定要大于等于开始时间, 因此需要在程序中附加条件语句。

第二, 实验地点、责任人。需要手工输入, 因此调用静态文本编辑框。

第三, 实验人员、实验设备。在学期内实验学员基本不变, 因此便于操作学期初将实验人员信息录入, 本软件设计成可选择形式。具体方法是:在GUI界面设置两个“listbox”, 其中左侧“listbox”包含所有学员姓名, 当实验人员记录本实验小组姓名时, 只需要调用相应班级中的学员名单, 通过程序控制选择班级学员中本组名单到右侧“listbox”, 此时左侧“listbox”剔除此名单。为防止出现误操作或者临时实验小组成员调整情况, 需要将选择设置成双向, 即可以将学员从左侧移除到右侧, 也可以将右侧实验名单移除到左侧, 此操作通过编程设计点击中间的移动箭头实现, 实验人员GUI界面如图5所示。实验设备在一定的时期内也存在固定性, 因此采取了和实验人员类似的程序处理方法, 实验设备GUI界面如图6所示。

3.1.3内容记录模块设计

内容记录模块包含实验描述、实验结果以及实验数据处理几部分 (如图7所示) 。

(1) 实验描述包含两种情况:第一, 理想情况下实验反应的现象, 一般由实验教师提前存储到数据库中, 当学员进行完实验, 可以调用相应的文件直接打开查看或者将文件导入到文本框中显示。学员根据实验描述检验实验进展是否正常。第二, 学员对自己实验出现的其他现象进行描述, 学员在数据库文件中自行填写实验描述, 如果查看本组学员实验描述情况, 在GUI界面中通过查看实验描述文件或者导入实验描述文件两种方式实现, 其过程实质是“导入实验描述文件”按钮是将导入的文件全路径保存在一个全局变量中, “查看实验描述文件”按钮通过此链接打开这个文件。 (2) 实验结果包括实验报告的撰写以及实验报告的查看、导入处理。设计思路类似于实验描述。 (3) 数据处理。数据处理完成数据导入、查看、删除以及实时查看波形功能。

3.2 数据库设计

3.2.1 数据库表的设计

在SQL Server的企业管理器中新建一个数据库data。根据用户需求以及软件界面特征, 在新建的数据库中建立4个表存储实验记录, 分别是基础表 (basic) 、人员表 (person) 、设备表 (equipment) 及数据表 (database) 。基础表中每一个记录都表示一个实验实体, 记录实验名称为主键, 它与表中其他字段都有唯一的对应关系。然而, 在软件界面可以看到, 使用3个列表框的实验信息 (人员、设备、数据) , 与实验名称是一对多的关系。因此, 使用另外3个表 (人员表、设备表及数据表) 对这些信息进行记录。数据库表关系图如图8所示。

基础表中的主键 (mingcheng) 与其他3个表中的“mingcheng”外键进行关联, 用来删除关联记录。当基础表中的某实验记录删除后, 其他3个表的与之“mingcheng”字段相同的记录均被删除。

把一次实验名称、实验目的、实验日期、实验地点、实验人员、实验设备都相同的实验记录定义为一个实验实体。在软件中需要对实验实体进行新建、打开、保存操作时, 需要根据当前实验实体的保存状态进行不同的操作。因此需要定义一个全局变量来监控当前实验实体的保存状态。

用全局变量SAVE_STATUS (见表1) 监控当前实验实体的保存状态。

“打开”和“新建”实验实体的流程图可以表示为图9所示。

一个实验实体对应数据库表中的一个记录。本数据集软件以实验实体为单位进行记录并存储。保存时用SQL的insert语句把实验记录插入到数据库表中。读取时用SQL的select语句把数据库表中的记录读入软件, 并显示在界面中。

3.2.2 ODBC的设置

ODBC是一种编程接口, 使应用程序访问以结构化查询语言 (SQL) 作为数据访问标准的数据库管理系统。所谓数据源, 就是要操作的数据库。要找到数据库, 必须给出数据库所在的目录、磁盘和服务器。在数据库建立完成的基础上, 用以下步骤完成ODBC设置, 实现Matlab对数据库的访问。

(1) 控制面板→管理工具→ODBC数据源→用户DNS (如图10所示) 。

(2) 点击“添加”后选择“SQL Server”, 点击完成, 进入如图11所示页面。

数据源名称可以根据程序要求任意命名, 可以与数据库名相同, 也可以不相同, 这里为“data”, 与数据库名相同。

服务器必须是SQL Server已经打开的服务器名称, 在SQL Server的“服务管理器”中可以查询 (如图12所示) 。

(3) 将默认的数据库设为新建的“data” (如图13所示) 。

(4) 测试数据源的连接, 成功 (如图14所示) 。

3.2.3 数据库调用

根据用户需求, 只有实验记录的保存、载入和删除部分的代码涉及数据库的操作。并且保存和载入代码可能会在多个控件的回调函数中调用, 因此把这两部分的代码写成单独的函数供控件回调函数的调用。图15给出了保存函数程序主流程。

4 数据集软件应用实例

4.1 实例GUI界面

在数据集软件界面上以双缝干涉实验及牛顿第二定律为例进行数据录入、处理及画图实验 (如图16所示) , 并将实验数据存入了数据库中, 实现了数据的安全存储, 并通过Matlab对其调用、修改等管理, 实现了此数据集软件的功能。

4.2 建立数据库表

数据库表如图17所示。

4.3 实验数据

实验中使用示波器TEK-DPO4104或TEK-DPO-7254c采集及存储数据, 保存下来固定格式的csv数据文件。在本程序中, 实验数据部分就可将这些数据文件导入到程序中, 以方便使用者随时以原始数据、时域谱或频谱的形式查看。

点击实验界面中的“导入数据”按钮, 在打开文件对话框中选择要导入的数据文件, 点击“确定”完成操作。导入实验数据成功后, 右侧列表框中显示出已经导入的数据文件 (如图18所示) 。

在列表框中双击任意数据文件, 可以查看此文件的时域和频域谱图, 并可以使用Matlab自带工具对谱图进行操作[10] (如图19所示) 。

5 结束语

通过分析传统实验室管理的特点, 指出传统实验室管理中信息的复杂性、数据处理的庞杂性以及实验要素的多样性, 从而导致实验室工作人员任务重、工作量大, 学员实验规范性差、难于管理, 数据存储安全性差。基于此, 本文开发了一套基于Matlab GUI/SQL Server的实验室数据集管理软件, 它通过Matlab实现对数据的调用、修改等管理, 软件开发界面友好, 方便易用。实践表明, 实验室数据集管理软件解决了传统实验室中存在的问题, 实现了实验室数据管理的科学化、规范化、现代化, 大大减轻了实验室工作人员及学员的工作量, 保障了数据存储的安全性, 具有一定的推广价值。

摘要:在分析了现代实验室数据管理特点的基础上, 以Matlab作为开发平台, 利用Matlab GUI/SQL Server技术开发了实验室数据集管理软件。软件由实验列表、实验名称、实验目的、实验日期、实验地点、实验人员、实验设备、实验描述、实验结果、实验数据、实验报告等几个单元模块组成, 具有实验信息记录、实验参数选择、实验结果录入、实验数据处理、实验报告生成等功能。实验结果表明软件实用性强, 有效减轻了实验管理者的工作量, 易于安全便捷的处理实验数据, 实现了实验室数据管理的科学化、规范化、现代化。

关键词:Matlab GUI,SQL Server 2000,数据库,数据采集与分析

参考文献

[1]董振海.精通MATLAB7编程与数据库应用[M].北京:电子工业出版社, 2007.

[2]苏晓生.掌握MATLAB 6.0及其工程应用[M].北京:科学出版社, 2001.

[3]罗华飞.MATLAB GUI设计学习手记[M].北京:北京航空航天大学出版社2011.

[4]胡晓冬, 董辰辉.MATLAB从入门到精通[M].北京:人民邮电出版社, 2010.

[5]马桂婷, 武洪萍, 袁淑玲.数据库原理及应用 (SQL Sever 2008版) [M].北京:北京大学出版社, 2010.

[6]高金兰, 章锋.数据库原理与SQL Sever应用[M].武汉:武汉大学出版社, 2007.

[7]陈明.数据库系统及应用:SQL Sever 2000[M].北京:清华大学出版社, 2007.

[8]杨章伟.精通SQL语言与数据库管理[M].北京:人民邮电出版社, 2008.

[9]李伟红.SQL Sever 2000数据库及应用[M].北京:水利水电出版社, 2007.

SQL实验四_SQL的数据更新 第9篇

题集

一、单选题

1.ER模型属于()

A.概念模型

C.网状模型

A.概念模式

C.逻辑模式

B.层次模型 D.关系模型 B.外模式 D.内模式

B.INSERT和DELETE

D.COMMIT和ROLLBACK B.逻辑数据独立性 D.逻辑结构独立性 B.联系冲突 D.实体冲突 2.数据库系统的三级模式结构中,定义索引的组织方式属于()

3.SQL语言中,实现数据存取控制功能的语句是()

A.CREATE和DROP C.GRANT和REVOKE A.物理数据独立性 C.物理结构独立性 A.结构冲突

C.类型冲突

4.物理结构的改变不影响整体逻辑结构的性质,称为数据库的()

5.全局ER模型的设计,需要消除属性冲突、命名冲突和()

6.一个供应商可供应多种零件,而一种零件可由多个供应商供应,则实体供应商与零件之间的联系是()A.一对一

C.多对一

A.AGE>18 AND G<24 C.AGE>18 AND G<=24 A.概念设计

C.逻辑设计

B.一对多 D.多对多

7.表达式“AGE BETWEEN 18 AND 24”等价于()

B.AGE>=18 AND G<24 D.AGE>=18 AND AGE<=24 B.物理设计 D.系统实施 B.WRITE(Q)D.LOCK X(Q)8.在数据库设计中,独立于计算机的硬件和DBMS软件的设计阶段是()

9.按照PX协议规定,一个事务要更新数据对象Q,必须先执行的操作是()

A.READ(Q)

C.LOCK S(Q)

10.下列聚集函数中不忽略空值(null)的是()

A.SUM(列名)C.COUNT(*)A.概念模式 C.存储模式 A.相容性 C.共享性

B.MAX(列名)D.AVG(列名)B.内模式 D.外模式 B.独立性 D.一致性

B.主键不允许有空值 D.外键不允许有空值 B.ORDER BY D.WHERE B.完整性控制 D.安全性控制 B.共享锁 D.排它锁 11.数据库系统中,对用户使用的数据视图的描述称为()

12.数据库的三级模式之间存在着两级映象,使数据库系统具有较高的数据()

13.实体完整性规则是指关系中()

A.不允许有空行 C.不允许有空列 A.SELECT C.FROM A.并发控制

C.一致性控制 A.死锁 C.活锁

14.实现关系代数投影运算的SQL子句是()

15.SQL语言中,用GRANT/REVOKE语句实现数据库的()

16.在事务依赖图中,若各个事务之间的依赖关系构成循环,则就会出现()

17.以下关于事务调度和封锁的描述中,正确的是()

A.遵守两段封锁协议的并发事务一定是可串行化的 B.可串行化的并发事务一定遵守两段封锁协议

C.遵守两段封锁协议的并发事务不一定是可串行化的 D.遵守两段封锁协议的并发事务一定不会产生死锁

18.数据库与文件系统的根本区别在于()

A 提高了系统效率

C 数据的结构化

B 方便了用户使用 D 节省了存储空间

19.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是()。

A.多对多

C.多对一

A.原子性

C.隔离性

B.一对一 D.一对多 B.一致性 D.持续性 20.“一个事务中的诸操作要么都做,要么都不做”,这是事务的()属性。

21.关系模型中,一个码是()

A可以由多个任意属性组成 B至多由一个属性组成

C由一个或多个属性组成,其值能够惟一标识关系中一个元组 D以上都不是

22.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()

A.DBS包括DB和DBMS C.DB包括DBS和DBMS A.名称

C.对象

B.DBMS包括DB和DBS

D.DBS就是DB,也就是DBMS B.属性 D.概念 B.外键子句

D.NOT NULL

B.关系运算理论

D.数理逻辑理论 23.区分不同实体的依据是()

24.SQL基本表的创建中是通过()实现参照完整性规则的。

A.主键子句

C.检查子句

25.设计性能较优的关系模式称为规范化,规范化的主要理论依据是()。

A.关系规范化理论 C.代数运算理论

26.在E-R模型转换成关系模型的过程中,下列叙述不正确的是()。

A.每个实体类型转换成一个关系模式

B.每个M∶N联系类型转换一个关系模式 C.每个联系类型转换成一个关系模式

D.在处理1∶1和1∶N联系类型时,不生成新的关系模式。

27.假如采用关系数据库系统来实现应用,在数据库设计的()阶段,需要将E-R模型转换为关系数据模型。A.概念设计

C.逻辑设计

A.索引

C.封锁

A 步骤

C 流程

B.物理设计

D.运行阶段

B.授权 D.日志 B 过程 D 调度

B 只可加 S 锁

D 不能加任何锁 B 内模式

D 模式

B可靠性 D安全性 28.DBMS普遍采用()方法来保证调度的正确性。

29.多个事务执行的次序称为()

30.如果事务 T 已在数据 R 上加了 X 锁,则其他事务在数据 R 上()

A 只可加 X 锁

C 可加 S 锁或 X 锁

A 存储模式

C 外模式

A 完整性 C 隔离性

31.模式的逻辑子集通常称为()

32.SQL语言的GRANT和REVOKE语句主要是用来维护数据库的()。

33.在数据库设计中,将E-R图转换成关系数据模型的过程属于()

A.需求分析阶段

C.逻辑设计阶段

B.概念设计阶段 D.物理设计阶段

B 只可加 S 锁

D 不能加任何锁

B 并发性

D 可恢复性 34.如果事务 T 已在数据 R 上加了 S 锁,则其他事务在数据 R 上()

A 只可加 X 锁

C 可加 S 锁或 X 锁

A完整性 C 安全性 35.在数据库系统中,视图可以提供数据的()

36.事务的持续性是指()

A.事务中包括的所有操作要么都做,要么都不做 B 事务一旦提交,对数据库的改变是永久的

C.一个事务内部的操作对并发的其他事务是隔离的

D.事务必须使数据库从一个一致性状态变到另一个一致性状态

37.一辆汽车由多个零部件组成,且相同的零部件可适用于不同型号的汽车,则汽车实体集与零部件实体集之间的联系是()

A.1:1

C.M:1

B.1:M

D.M:N B.硬盘数据丢失 D.磁带数据丢失 B数据库管理系统

D数据库管理员

B.从层次模型导出关系模型 D.以上都不是 B.模式 D.内模式 B.层次模型 D.E—R模型

B.INSERT和DELETE

D.COMMIT和ROLLBACK B.可以全同 D.是不可分割的 38.系统故障会造成()

A.内存数据丢失

C.软盘数据丢失

A数据

C 数据库用户

39.数据库系统核心是()

40.构造关系数据模型时,通常采用的方法是()。

A.从网状模型导出关系模型 C.从E—R图导出关系模型 A.外模式

C.用户模式 A.关系模型

C.网状模型

41.数据库系统的三级模式中,表达物理数据库的是()。

42.具有坚实数学理论基础的数据模型是()。

43.SQL语言中,实现数据更新功能的语句是()

A.CREATE和DROP C.GRANT和REVOKE A.不能全同 C.必须全同 44.在关系模型中,关系的每一个属性值()。

45.多个用户同时对同一数据进行操作,描述的是()。

A.数据库的完整性 C.数据库的恢复

B.数据库的并发控制 D.数据的完整性

46.一个供应商可供应多种原材料,而一种原材料可由多个供应商供应,则实体供应商与原材料之间的联系是()A.一对一

C.多对一

A.故障维护

C.定期维护

B.一对多 D.多对多

B.设计关系模型

D.日常维护

B.一个是SELECT,一个是DELETE D.两个都是SELECT B.基表

D.存储文件和视图 B.程序的执行结果 D.对数据的查询操作 47.以下四项中,不包括在数据库维护工作中的是()。

48.如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突的操作是()。

A.一个是DELETE,一个是SELECT C.两个都是UPDATE

A.视图

C.视图和基表

49.SQL语言的结构中,()有对应的存储文件。

50.事务日志用于保存()。

A.程序运行过程

C.对数据的更新操作

二、综合设计题

51.某公司欲建立一个定单管理系统,要求保存销售职工信息,产品信息,供应商信息,定货人信息。已知每个销售职工可销售多种产品,每个产品可被个多个销售职工销售。每个供应商可供应多种产品,而每种产品可由多个供应商供应。每个定货人可订购多种产品,而每种产品可由多个定货人订购。销售职工有:职工号,姓名,电话;

供应商有:供应商号,姓名,电话,地址; 产品有:产品号,产品名称,型号规格。定货人有:定货人号,姓名,电话,地址; 每次定货有定货日期和数量。要求:

1根据上述语义设计E-R模型,要求标注联系类型。2将其转化为关系模式。注明每个关系的主键和外键。每个车间生产多种产品,而每种产品可由多个车间生产。工段有:工段号,工段名;

车间有:车间号,车间名,车间领导; 产品有:产品号,产品名称,型号规格。

52.已知某个工厂中有多个工段,每个工段有多个车间,每个车间只在一个工段中,每个车间完成的产品都有完工日期。

1根据上述语义设计E-R模型,要求标注联系类型,可省略属性。E-R模型转换成关系数据模型,并指出每一个关系的主键和外键(如果存在)。

53.假设某公司在多个地区设有销售部经销本公司的各种产品,每个销售部聘用多名

职工,且每名职工只属于一个销售部。销售部有:部门名称、地区和电话等属性; 产品有:产品编码、品名和单价等属性; 职工有:职工号、姓名和性别等属性; 每个销售部销售产品有数量属性。

1根据上述语义画出ER图,要求在图中画出属性并注明联系的类型。2 试将ER模型转换成关系模型,并指出每个关系模式的主键和外键。

54.假设某公司的业务规则如下:

1公司下设几个部门,如技术部、财务部、市场部等。

2每个部门承担多个工程项目,每个工程项目属于一个部门。3每个部门有多名职工,每一名职工只能属于一个部门。4一个部门可能参与多个工程项目。

5工程项目有工程号、工程名两个属性;部门有部门号、部门名称两个属性;职工有职工号、姓名、性别属性; 问题:

1.根据上述规则设计E-R模型。

2.将E-R模型转换成关系数据模型,并指出每个关系的主键和外键。

55.某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。

1根据上述语义画出ER图,在ER图中需注明实体的属性、联系的类型及实体的标识符。2 将E-R模型转换成关系模型,并指出每个关系模式的主键和外键。

三、编程题1 56.在供应商、零件数据库中有以下3个关系模式:

供应商:S(SNO,SNAME,CITY,STATUS)

零件:P(PNO,PNAME,WEIGHT,COLOR,CITY)供应货:SP(SNO,PNO,QTY)

供应货关系SP表示某供应商SNO,供应了PNO零件,数量为QTY。用SQL语言完成以下操作: 求供应红色零件的供应商名字; 求北京供应商的号码、名字和状况(STATUS);

求零件P2的总供应量; 把零件P2的重量增加5公斤,颜色该为黄色。5 统计每个供应商供应的项目总数。建立一个存储过程,输入零件编号显示零件的PNAME,WEIGHT,COLOR,CITY

57.假设新华书店数据库中有2个关系模式:

出版社(出版社编号,出版社名称,出版社地址)

图书(图书编号,书名,出版社编号,图书分类,定价)试用SQL语句完成下题。

1.检索出版社编号为“CS”的图书编号、书名和定价。2.查询图书分类为“教材”的书名、定价和出版社名称。

3.按照出版社编号统计每个出版社出版的图书有多少种和平均定价。

4.检索由高等教育出版社出版、图书分类为“教材”且定价超过30元的图书编号和书名。”

5.删除图书编号“2000301”的图书信息

6.建立一个存储过程,统计各分类的图书的本数。

58.设有三个关系模式如下:

学生S(S#,SNAME,AGE,SEX)各属性的含义为:学号,姓名,年龄,性别 学习SC(S#,C#,GRADE)各属性的含义为:学号,课程号,成绩

课程C(C#,CNAME,TEACHER)各属性的含义为:课程号,课程名,教师 于以上关系模式试用SQL语句回答下列题: 1统计男生和女生的人数。

2.检索教师‘张明’所授课程的课程号和课程名。4.选修数据库原理的学生名单。5.删除200030号学生的选课记录。

6.建立一个存储过程,通过输入学号,显示学生选课门数.59.职工(职工号,姓名,性别,职务,家庭地址,部门编号)

部门(部门编号,部门名称,地址,电话)

保健(保健卡编号,职工号,检查身体日期,健康状况)用SQL语句完成下列问题:

1.查找所有女科长的姓名和家庭地址; 2.查找“办公室”的科长姓名和家庭地址;

3.统计“财务科”中健康状况为“良好”的职工人数。4.删除职工关系表中职工号为“3016”的记录;

5.将职工号为“3061”的职工的健康状况改为“一般”; 6.建立健康状况为“差”的职工的视图。

60.有三个关系

部门(部门号,名称,负责人编号,联系电话.职工(职工号,姓名,出生日期,性别,工资,部门号,职称)医疗(职工号,就医日期,医疗费用,医院名称,诊断结果)用SQL语言实现下列问题:

1.检索职工“卢仪”作为部门负责人所在部门的名称和联系电话; 2.检索在“协和医院”中没有就医记录的职工号、姓名和部门名称; 3.将职工号为 ‘3301‘的职工每次的医疗费用减半; 4.统计每个职工的医疗费用总和。

5.定义一个没有任何医疗记录的职工的职工号、姓名视图AAA。6 建立一个存储过程,以职工号为形参,显示该职工的医疗清单。

四、编程题2 61.用PB编程程序,某登录界面如下:

数据库中有表LOGIN(TID,PASSWORD,ROLE),请写出该窗口上控件cb_1的clicked事件的程序。当通过验证后进入窗口W-mian,否则提示:“你是非法用户,不能进入系统”

62.用PB编写程序,有窗口W_data能完成对数据的管理,如图请对分别对cb_1,cb_2,cb_3,cb_4编程。

63.如图lv_1为列表视图,报表风格,当w_list打开时lv_list中显示数据库中学生表的所有学生的信息。请为w_1的open事件编程。使用表:学生(姓名,性别,年龄,系别)

64.用PB编程,如图1点击菜单中的注册新用户,打开w_new.1 写出菜单项”退出”的clicked事件中的代码.2 在sle_1中输入新用户名,如果此用户名已存在则出现消息框,提示”此用户名已存在,请另输入用户名”.3 写出cb_1的clicked事件中的代码.使用表user(username,password,role)

65.用PB编写程序,界面如图: 对w_data的open事件编程,使w_data一打开dw_1中就显示数据.2 对w_data的closequery事件编程,使dw_1中的数据发生改变而又未保存就退 出窗口时给用户一个消息框提示.五、简答题(略)……

答案

一、单选题 1.A 2.D 3.C 4.A 5.A 6.D 7.D 8.A 9.D 10.C 11.D 12.B 13.B 14.A 15.D 16.A 17.A 18.C 19.C 20.A 21.C 22.A 23.B 24.B 25.A 26.C 27.C 28.C 29.D 30.D 31.D

32.D 33.C 34.B 35.C 36.D 37.D 38.A 39.B 40.C 41.D 42.A 43.B 44.D 45.B 46.D 47.B 48.D 49.B 50.C

二、综合设计题51.

供应商(供应商号,姓名,电话)主键:供应商号外键:

产品(产品号,名称,规格,单价)主键:产品号外键:

供应(产品号,供应商号,数量)主键:(产品号,供应商号)外键:产品号,供应商编号 销售职工(职工号,姓名,工资)主键:职工号

定货人(定货人号,姓名,地址,电话)主键:定货人号

订购(定货人号,职工号,产品号,时间,数量)主键:(定货人号,职工号,产品号)外键:定货人号,职工号,产品号

52.工段(工段号,工段名)

主键:工段号

车间(车间号,车间名,车间领导,工段号)主键:车间号

外键:工段号

产品(产品号,产品名称,型号规格)

主键:产品号

生产(产品号,车间号,完工日期)

主键:(产品号,车间号)外键:产品号,车间号。

53.销售部(部门名称、地区、电话)主键:部门名称

产品(产品编码、品名、单价)

主键:产品编码

职工(职工号、姓名、性别、部门名称)主键:职工号 外键:部门名称

销售(部门名称、产品编码、数量)主键:(部门名称、产品编码)外键:部门名称、产品编码

54.工程项目(工程号、工程名,部门号)主键:工程号

外键:部门号 部门(部门号、部门名称)主键:部门号

职工(职工号、姓名、性别、部门号)主键:职工号,外键:部门号

55.工厂(工厂编号、厂名、地址)主键:工厂编号

产品(产品编号、产品名、规格)主键:产品编号

职工(职工号、姓名、工资、聘期、工厂编号)主键:职工号 外键:工厂编号

生产(产品编号、工厂编号、计划数量)主键:(产品编号、工厂编号)外键:产品编号、工厂编号

三、编程题1 56.1 SELECT SNAME FROM S WHERE SNO IN(SELECTSNO FROM P,SP WHERE P.COLOR=‘红色’AND P.PNO=SP.PNO);

2. SELECT SNO,SNAME,STATUS FROM S WHERE S.CITY=‘北京’ 3. Select sum(QTY)from SP WHERE PNO=‘P2’. UPDATE P SET WEIGHT=WEIGHT十5,COLOR=‘黄色’ WHERE PNO=‘P2’ 5 Select SNO,count(distinct PNO)From SP Group by(SNO)6 CTREATE PROC P_LIST @Id CHAR(4)As Select PNAME,WEIGHT,COLOR,CITY From P WHERE PNO=@Id

57.1 SELECT 图书编号, 书名 , 定价

from 出版社, 图书

where出版社.出版社编号=图书.出版社编号 and出版社编号=’CS’ 2.SELECT 书名,定价 ,出版社名称 from 图书

where 图书分类= ‘教材’

3.Selcet 出版社编号,count(distinct 图书分类),avg(定价)from

图书 group by(出版社编号)4 SELECT 图书编号, 书名 from 出版社, 图书 where出版社.出版社编号=图书.出版社编号

and 高等教育出版社

and图书分类=’教材

and 定价>30 5 delete from 图书 where 图书编号 =’2000301’ 6 create proc

book_count as Selcet 图书分类,count(*)from

图书

group by(图书分类)

58.1 SELECT SEX,COUNT(*)from

S group by(sex)2.SELECT C#,CNAME FROM C where TEACHER=’张明‘

3. SELECT count(*)FROM S,SC,C Where C.C#=SC.C# AND S.S#= SC.S# AND C.TEACHER=’张明‘. 4 SELECT S.SNAME FROM C,SC,C Where C.C#=SC.C# AND S.S#= SC.S# AND C.CNAME =’数据库原理‘ 5 DELETE FROM S WHERE S# =‘200030’ 6 CREATE PROC c_count

@ id int for select

count(distinct.课程编号)as 选课门数 from

选课

where 学号=@id;

59.1 SELECT 姓名,家庭地址

FROM职工

WHERE性别=’女’ and职务=’科长’ 2.SELECT 姓名,家庭地址 FROM职工, 部门

WHERE

部门.部门名称=’办公室’and职工.职务=’科长’’ And 部门.部门编号=职工.部门编号 3. SELECT count(*)FROM职工, 部门, 保健

WHERE

部门.部门名称=’ 财务科’and保健.健康状况=’良好’ And 部门.部门编号=职工.部门编号And 保健.职工号=职工.职工号 4 delete form

职工 where 职工编号=’3061’ update 保健 set 健康状况=‘一般’where职工编号=’3061’ 6 create view bad_health

as SELECT * FROM职工, 保健

WHERE

保健.健康状况=’差’ And 保健.职工号=职工.职工号

60.1 SELECT 部门.名称, 部门.联系电话

FROM 职工,部门

WHERE职工.姓名=’卢仪’ AND 部门.负责人编号 =职工.职工号SELECT 职工号,姓名,部门名称 FROM 职工 WHERE职工号

not in {

Select 职工号

From医疗 Where医院名称=’ 协和医院’} 3 UPDATE医疗SET 医疗费用=医疗费用/2 where职工号=’3301’select 职工号 ,sum(医疗费用)from医疗 group by(职工号)5 create view AAA as

SELECT 职工号,姓名

FROM 职工

WHERE职工号

not in { Select 职工号

From医疗 } 6 create

proc health_list @id char(4)

as

select 职工号,就医日期,医疗费用,医院名称,诊断结果 from 医疗

where职工号=@id

四、编程题2 61.int id

select number into :id from teacher Where number=:sle_1.text and password=:sle_2.text;If sqlca.sqlcode=100 then Messagebox(“警告”,“输入的用户或口令错误”)End if

62.1添加的clicked事件

int i i=dw_1.insertrow(0)dw_1.scrolltorow(i)dw_1.setfocus()

删除的clicked事件 dw_1.deleterow(0)3 保存的clicked事件 int j j=dw_1.update()if j=-1 then

messagebox(“information”,“数据无法保存”)else messagebox(“information”,“数据已保存”)end if 4关闭的clicked事件 close(parent)63.int i,j string outname,outsex,soutage int outage lv_1.AddColumn(“姓名”, Left!, 600)

lv_1.AddColumn(“性别”, Left!, 400)

lv_1.AddColumn(“年龄”, Left!, 400)

declare namecur cursor for select name,sex,age from student;open namecur;if sqlca.sqlcode=-1 then messagebox(“sql error”,sqlca.sqlerrtext)else fetch namecur into :outname,:outsex,:outage;i=1 do while sqlca.sqlcode=0

lv_1.addItem(outid,1)lv_1.Setitem(i,1,outname)lv_1.Setitem(i,2,outsex)soutage=string(outage)lv_1.SetItem(i,3,soutage)

fetch namecur into :outname,:outsex,:outage;i++ loop

64.1 close(parent)

sle_1 的modifed事件 string abc;select role into :abc from user where username=:sle_1.text;if sqlca.sqlcode=100 then messagebox(“提示”,” 此用户名已存在,请另输入用户名”)end if 3 insert into user values(:sle_1.text,:sle_2.text.:ddlb_1.text)

65.1 dw_1.settransobject(sqlca)2

integer m

if dw_1.modifiedcount()+dw_1.deletedcount()>0 then m=messagebox(“信息”,“数据已改变,是否保存”,question!,yesnocancel!,1)if m=1 then dw_1.update()=-1

return 0 elseif m=2 then return 0 elseif m=3 then return 1 end if end if

SQL实验四_SQL的数据更新 第10篇

说明:

此次实验基于实验一,数据库软件使用Microsoft SQL Server x64

1准备一台Windows Server 的虚拟机名为vSphereDB,然后加入域kkfloat.com,关闭防火墙功能

2在vSphereDB服务器上安装.Net Framework 3.5功能,然后插入Microsoft SQL Server 2008 x64的安装光盘进行安装,注意在SQL Server 2008 安装配置时必须把SQL Server的所有服务设置成自动运行且运行账号为域管理员,SQL Server身份验证配置成混合模式,然后启用SQL Server的远程数据库访问功能,

3 在vSphereDB服务器上打开数据库管理工具,创建vCenter工具的数据库名为vCenterDB,创建Update Manager工具的数据库名为vUpdateDB

SQL实验四_SQL的数据更新

SQL实验四_SQL的数据更新(精选10篇)SQL实验四_SQL的数据更新 第1篇实验四、数据更新1、实验目的熟悉数据库的数据更新操作,能够使用SQL...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部