数据库实验二
SQL实验二:数据库查询实验报告
实验二数据库的查询实验实验目的和要求(1)掌握SQL Server查询分析器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。
(2)熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
(3)熟练掌握数据查询中的分组、统计、计算和组合的操作方法。
实验内容和原理在实验一定义的“学生成绩数据库”中,使用T-SQL 语句完成以下查询:(1 )求计算机系学生的学号和姓名。
(2)求选修了数学的学生学号、姓名和成绩。
(3)求选修01 课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。
(4)查找选修课程的平均成绩位于前三名的学生的学号。
(5)查询计算机系的姓刘且单名的学生的信息。
(6)查询至少选修两门课程的学生学号。
(7)查询学生的学号、课程号以及对应成绩与所有学生所有课程的最高成绩的百分比。
(8)查询选修“数据库”课程,且成绩在80 分以上的学生的学号和成绩。
(9)查询所有姓“王”的同学没有选修的课程名。
(请分别用exists和in完成该查询) (10)查询选修了全部课程的学生的姓名。
(请至少写出两种查询语句)(11)求选修了学生“ 95001”所选修的全部课程的学生学号和姓名。
(12)查询每一门课的间接先修课。
(13)列出所有学生所有可能的选课情况。
(14)列出每个学生的学号及选修课程号,没有选修的学生的学号也一并列出。
(15)输出与“张三”同性别并位于同一个系的所有同学的姓名。
(请至少写出两种查询语句)(16)查询至少被两名男生选修的课程名。
(17)对被两名以上学生所选修的课程统计每门课的选课人数。
要求输出课程号和选修人数,查询结果按人数降序排列;若人数相同,按课程号升序排列。
(18)列出选修课程超过 3 门的学生姓名及选修门数。
(19)检索至少选修课程号为01 和03 的学生姓名。
(20)检索至少选修课程“数学”和“操作系统”的学生学号。
(21 )查询‘操作系统'课程的最高分的学生的姓名、性别、所在系(22)查询数据结构的成绩低于操作系统的成绩的学生姓名及该生的这两门课的成绩(23)所有成绩都在70 分以上的学生姓名及所在系。
VF实验二关联、查询和数据库
实验二关联、查询和数据库实验2-1 多表关联与查询实验目的:〔1〕理解关联的概念,掌握在数据工作期窗口中建立关联的方法。
〔2〕掌握SELECT-SQL查询命令。
〔3〕掌握用查询设计器建立查询的方法。
实验要求:〔1〕在数据工作期窗口上建立以“订单〞为父表,“订单明细〞为子表的一多关系;再建立以“订单明细〞为父表,“货物〞为子表的多一关系的二级关联。
然后查看关联后的效果。
〔2〕用SELECT-SQL命令对上述5个表作多表查询练习。
①查询联系“东南实业〞公司的员工**及联系。
②查询订购麻油的订单份数。
〔3〕用查询设计器查询公司订货情况。
实验步骤:〔1〕为“关联〞建立索引:为订单表的订单号字段建立索引,再为货物表的货号字段建立索引。
1)翻开“订单明细表〞在命令窗口里输入命令:INDE* ON 订单号 TAG ddh,执行命令就为该表建立了索引,翻开表生成器查看如下:图中显示了索引,默认是升序的。
2〕同样的方法,翻开“订单明细表〞在命令窗口里输入命令:INDE* ON 货号 TAG hh,执行命令就为该表建立了索引,〔2〕建立关联:过程方法:1〕翻开数据工作期窗口→分别用“翻开〞按钮翻开订单表、订单明细表和货物表→在“别名〞列表框中选定“订单〞,单击“关系〞按钮→在“别名〞列表框中选定“订单明细〞→随即弹出“设置南索引顺序〞对话框,其列表框中显示“订单明细.订单号〞。
选定“确定〞按钮→随即弹出“表达式生成器〞对话框,其SET RELATION框中显示“订单号〞。
选定“确定〞按钮,多一关系建立完成→选定“一对多〞按钮→在随即弹出的“创立一对多关系〞对话框中→选定“确定〞按钮,一多关系建立完成。
显示的表达式生成器如下:2)在“别名〞列表框中选定“订单明细〞→为确定以订单明细表为父表建立下一级关联,在“关系〞列表框中也选定“订单明细〞→单击“关系〞按钮→在“别名〞列表框中选定“货物〞→在随即弹出的“设置索引顺序〞对话框中选定“确定〞按钮→在“表达式生成器〞对话中选定“确定〞按钮,多一关系建立完成,如图下列图所示:〔3〕查看关联效果:分别“订单〞、“订单明细〞和“货物〞浏览窗口,并按左中右顺序排列→选定“订单〞表的*个记录,“订单明细〞和“货物〞浏览窗口的内容即会关联变化,如下列图所示。
数据库实验报告
实验(一): 熟练掌握SQL语言实验目的:熟悉上机环境,创建数据库,在数据库上建立关系模式,插入数据,进行相应的查询操作。
实验内容:具体包括如下三部分。
一、熟悉上机环境。
客户/服务器结构,数据库服务器在一台NT服务器上,同学们通过客户机(操作系统为Windows 2000)上安装的SQL Server客户端程序, 使用SQL Server数据库服务器。
具体包括:1.了解SQL Server 环境。
鼠标点击开始,进入“Microsoft SQL Server→企业管理器”,点击SQL Server组下的数据库服务器(服务器名称为NEUC-201S(Windows NT)), 可以看到服务器上的圆形标志变为绿色,说明客户端程序已与服务器连接成功。
点击服务器(NEUC-201S(Windows NT))下的数据库,可以看到服务器上已建立的数据库,你可访问你有权访问的数据库,并进行相应的操作功能。
因为,数据库服务器上建有许多数据库, 每个数据库都有一些合法的用户。
2.鼠标点击开始,进入“Microsoft SQL Server→查询分析器”,输入用户名和口令,进入SQL查询分析器。
如:你登录的客户机为27号,那么请以用户名user27,口令为user27登录,登录后缺省连到数据库user27上,user27/user27是数据库user27的创建者,因此用户user27/ user27具有在数据库user27上创建表等一切权力。
3.在SQL查询分析器环境下,你就可进行SQL命令语句操作了。
二、在数据库useri上创建学生选课有关关系模式,并插入相应的数据,实现有关查询。
1.描述学生、课程情况的E-R图如下,请将其转化为用关系数据模型描述的关系模式CREA TE TABLE Student(Sno CHAR(9) PRIMARY KEY,Sname CHAR(20) UNIQUE,Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20));CREA TE TABLE Course(Cno CHAR(4) PRIMARY KEY,Cname CHAR(40),Cpno CHAR(4),Ccredit SMALLINT,FOREIGN KEY (Cpno) REFERENCES Course(Cno) );CREA TE TABLE SC(Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,PRIMARY KEY(Sno,Cno),FOREIGN KEY(Sno) REFERENCES Student(Sno), FOREIGN KEY(Cno) REFERENCES Course(Cno) );4在已建立的关系模式之上(已插入一些数据)建立主键约束,参照约束和用户定义的约束(要求学生年龄不小于14岁,不大于35岁),如果约束不能建立,请分析原因,修改后建立上述约束。
数据库原理实验2数据查询
课程名称数据库原理实验序号 2实验项目数据查询实验地点实验学时实验类型验证性指导教师实验员专业班级学号姓名年月日成绩:A教师该学生本次实验的内容丰富,完成的操作步骤详细具体,实验结果正确,在实验报告的填写中态度十分严谨,对数据分析有自己的见解。
四、实验过程(实验步骤、记录、数据、分析)实验准备:在实验一的基础上(包括数据库的建立、定义表和添加表内容)进行实验,下面分别为depts表、students表、courses表、reports表。
一、简单的选择与投影查询1、无条件查询1.1查询全体学生的详细记录。
这是一个无条件的选择查询,其命令为:其命令为:select * from students运行结果如右图,显示整张表的内容。
1.2查询全体学生的姓名(Sname)、学号(Sno)、所在系(dno)。
这是一个无条件的投影查询,其命令为:select sname,ssexfrom students运行结果如右图,显示了表中的三列。
1.3查询全体学生的姓名(Sname)、出生年份及学号(Sno)。
其命令为:select sno,sname,2017-sage as birth from students运行结果如右图,显示了三列内容。
1.4查询全体学生的姓名、出生年份和学号,要求用小写字母表示学号中的字母。
其命令为:select sname,'birth:' title,YEAR(GETDATE())-sagebirthyear,LOWER(sno) lsnofrom students运行结果如右图,显示了四列内容。
1.5查询选修了课程的学生学号。
其命令为:select distinct snofrom reports运行结果如右图,distinct短语是为了消去查询结果中的重复值。
2、条件查询(1)比较条件1.1查询d03系全体学生的学号(Sno)和姓名(Sname)。
其命令为:select sno,snamefrom studentswhere dno='d03'运行结果如右图,显示了d03系的全体学生姓名与学号。
数据库实验答案实验二Sql
(1) 查找有销售记录的客户编号、名称和订单总额。
命令:SELECT a.CustomerNo,CustomerName, sum(quantity*price) orderSumFROM OrderMaster a,OrderDetail b,Customer cWHERE b.orderNo=a.orderNo AND c.CustomerNo=a.CustomerNoGROUP BY a.CustomerNo,CustomerNameORDER BY a.CustomerNo,orderSum DESC(2) 在订单明细表中查询订单金额最高的订单。
命令:SELECT top 1 orderNo,sum(quantity*price)订单金额FROM OrderDetailGROUP BY orderNoORDER BY 订单金额DESC(3) 查询没有订购商品的客户编号和客户名称。
命令:SELECT CustomerNo,CustomerNameFROM CustomerWHERE CustomerNo NOT IN (SELECT CustomerNo FROM OrderMaster)(4) 找出至少被订购3次的商品编号、订单编号、订货数量和订货金额,并按订货数量的降序排序输出。
命令:SELECT a.productNo,orderNo,quantity,(quantity*price) moneyFROM OrderDetail a,(SELECT productNoFROM OrderDetailGROUP BY productNoHA VING COUNT(*)>=3) bWHERE a.productNo =b.productNoORDER BY a.productNo,quantity DESC被订购三件以上的……SELECT b.ProductNo,orderNo,quantity,orderSum=quantity*priceFROM OrderDetail b,(SELECT ProductNo FROM(SELECT ProductNo,sum(quantity)SQfrom OrderDetail GROUP BY ProductNo)aWHERE a.SQ>3)cWHERE b.ProductNo=c.ProductNoORDER BY b.quantity DESC(5) 使用子查询查找32M DRAM的销售情况,要求显示相应的销售员的姓名、性别,销售日期、销售数量和金额,其中性别用“男”、“女”表示。
2-Expriment 2数据库实验
Experiment 2. Expressions and GROUP BY clause1. Search conditions1.1 Select rows within a certain range. (Using BETWEEN…AND…)a. Find all the employees who earn between $1200 and $1400.b. Find all the employees who do not earn between $1200 and $1400.1.2 Select rows that match a value in a list. (Using IN(…) operator)a. Find the employees who are clerks, analysts or salesmen.b. Find the employees who are not clerks, analysts or salesmen.1.3 Select rows that match a character string pattern. (Using LIKE operator)a. Find all the employees whose names begin with the letter “M”.b. Find all the employees whose names contain the letter “N”.c. Find all the employees whose names are not 5 characters long.2. Ordering rows in a query result2.1 List the employees in department 30 ordered by their salaries in ascending order.2.2 List the employees in department 30 ordered by their salaries in descending order.2.3 Order all employees by job. For those with the same job, put them in descending salary order.3. Expressions3.1 The ISNULL() function.Syntax: ISNULL ( check_expression , replacement_value )Description: Check whether check_expression is a null value. If it is, replace it with replacement_value in the expression.Example: Calculate the average price of all books. Consider the books without price data as $20.SELECT AVG(ISNULL(Price, 20)) FROM Books;3.2 List the name, salary, commission, and sum of salary plus commission of all salesmen.3.3 List the name, salary and commission of employees whose commissions are greater than 25% of their salaries.3.4 Calculate the total annual earnings of all salesmen based on their monthly salaries and their monthly commissions.4. Aggregate Functions4.1 Find the average salary for clerks.4.2 Find the total salary and total commission for salesmen.4.3 Compute the average annual salary plus commission for all salesmen.4.4 Find the highest and lowest paid employee salaries and the difference between them.4.5 Count the number of employees who receive a commission.4.6 Count the number of different jobs held by employees in department 30.4.7 Count the number of employees in department 30.5. GROUP BY clause5.1 List the department number and average salary of each department.5.2 F ind each department’s average annual salary for all its employees except the managers and the president.5.3 Divide all employees into groups by department, and by jobs within department. Count the employees in each group and compute each group’s average annual salary.5.4 List the average annual salary for all job groups having more than 2 employees in the group.5.5 List all the departments that have at least two clerks.5.6 Find all departments with an average commission greater than 25% of average salary.。
数据库实验报告全
数据库实验报告全实验⼀实验⽬的1.熟悉SQL Server Management Studio(SSMS)的⼯作环境2.掌握使⽤和命令建⽴数据库的⽅法3.熟练掌握使⽤SSMS和T-SQL语句创建、修改和删除表。
4.熟练掌握使⽤SSMS和T-SQL语句插⼊、修改和删除表数据。
实验内容1.采⽤SQL Server Management Studio 、T-SQL语句两种⽅式创建产品销售数据库,要求:1)使⽤SSMS创建数据库CPXS_bak,数据⽂件初始⼤⼩为5MB,最⼤⼤⼩50MB,按5MB增长;⽇志⽂件初始为2MB,最⼤可增长到10MB,按2MB增长;其余参数取默认值。
2)⽤T-SQL语句创建数据库CPXS,数据⽂件的增长⽅式改为增长⽅式按10%⽐例增长,其余与CPXS_bak。
3)⽤T-SQL语句删除数据库CPXS_bak。
2.CPXS数据库包含如下三个表:1)产品(产品编号,产品名称,价格,库存量)2)客户(客户编号,客户名称,地区,负责⼈,电话)3)销售(产品编号,客户编号,销售⽇期,数量,销售额)三个表结构如资料中图3.1~图3.3所⽰,请写出创建以上三个表的T-SQL语句并在查询分析器中运⾏。
3.在SSMS中输⼊如资料中图3.4~图3.6的商品表、客户表和销售表的样本数据。
6.将CP表中每种商品的价格打8折。
7.将CP表中价格打9折后⼩于1500的商品删除。
⼆.实验步骤与结果(说明:要写出相关步骤和SQL语句,实验结果可以是运⾏画⾯的抓屏,抓屏图⽚要尽可能的⼩。
)1.1)使⽤SSMS创建数据库CPXS_bak效果图为2)⽤T-SQL语句创建数据库CPXS:CREATE DATABASE CPXSON PRIMARY(NAME='CPXS_DATA',FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\CPXS_DATA.MDF', SIZE=5MB,MAXSIZE=50MB,FILEGROWTH=10%)LOG ON(NAME='CPXS_LOG',FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\CPXS_LOG.LDF', SIZE=2MB,MAXSIZE=10MB,FILEGROWTH=2MB)3) DROP DATABASE CPXS_bak刷新数据库会看到CPXS_bak不存在2.1) USE CPXSGOCREATE TABLE产品(产品编号char(6)PRIMARY KEY,产品名称char(30)NOT NULL,价格float(8),库存量int,)2) USE CPXSGOCREATE TABLE客户(客户编号char(6)PRIMARY KEY,客户名称char(30)NOT NULL,地区char(10),负责⼈char(8),电话char(12))3)USE CPXSGOCREATE TABLE销售(产品编号char(6),客户编号char(6),销售⽇期datetime,数量int NOT NULL,销售额float(8)NOT NULL,CONSTRAINT pk_js PRIMARY KEY(产品编号,客户编号,销售⽇期))/*pk_js为约束名*/ 执⾏完上⾯的操作就能看见表已经添加进数据库中,如图所⽰:3. 打开表:在其中添加数据:4.1)USE CPXSINSERT INTO产品(产品编号,产品名称,价格,库存量) VALUES('200001','柜式空调','3000','200')2)USE CPXSINSERT INTO产品(产品编号,产品名称,价格,库存量) VALUES('200002','微波炉','1000','100')3)USE CPXSINSERT INTO产品(产品编号,产品名称,价格,库存量) VALUES('200003','抽油烟机','1200','50')可以看见图中的产品表增加了如下内容:5.USE CPXSALTER TABLE产品Add产品简列varchar(50)6. USE CPXSUPDATE产品set价格=价格*0.87. USE CPXSDELETE产品WHERE价格*0.9<1500三.实验中的问题及⼼得(说明:此处应写明此次实验遇到的问题有哪些,如何解决的,不能够空。
数据库原理及应用实验指导书答案
数据库原理及应用实验指导书 - 答案实验一:数据库管理系统的安装与配置问题一数据库管理系统(DBMS)是一种软件,用于管理和组织数据库。
它允许用户创建,读取,更新和删除数据库中的数据。
常见的数据库管理系统有MySQL,Oracle,SQL Server等。
问题二在实验室环境中,我们将使用MySQL作为我们的数据库管理系统。
以下是MySQL的一些常见特点: - 开源免费 - 跨平台支持 - 可扩展性强 - 有大型的用户社区和丰富的资源支持问题三MySQL的安装步骤如下: 1. 下载MySQL安装文件,可以从MySQL官方网站或者其他可信的下载源获取。
2. 运行安装程序,按照向导的指示进行安装。
3. 选择是否要安装MySQL 服务器和MySQL工具。
4. 设置密码以保护数据库的安全。
5. 完成安装程序并启动MySQL服务。
数据库是一个组织和存储数据的容器。
在关系型数据库中,数据以表的形式存储,每个表包含多个行和列。
每行代表一个记录,每列代表一个字段。
问题五关系型数据库管理系统(RDBMS)是一种DBMS,它使用结构化查询语言(SQL)来操作和处理数据。
常见的关系型数据库管理系统有MySQL,Oracle,SQL Server等。
问题六开放数据库连接(ODBC)是一种标准的数据库访问方法,它允许不同的应用程序通过统一的接口访问不同的数据库管理系统。
ODBC驱动程序充当应用程序和数据库之间的翻译器。
问题七在Windows系统中,ODBC数据源可以通过控制面板的“管理工具”来配置。
在数据源配置对话框中,可以添加,编辑和删除ODBC数据源。
在Windows系统中,可以使用ODBC接口库和ODBC驱动程序来连接和操作数据库。
具体步骤如下: 1. 加载ODBC接口库。
2. 初始化ODBC环境。
3. 建立数据库连接。
4. 执行SQL语句。
5. 关闭数据库连接。
6. 释放ODBC环境。
问题九ODBC接口库是一组API函数,用于连接和操作数据库。
实验二空间数据库管理及属性编辑实验报告
实验二空间数据库管理及属性编辑实验报告The following text is amended on 12 November 2020.实验报告一、实验名称二、实验目的三、实验准备四、实验内容及步骤五、实验后思考题班级:资工(基)10901姓名:魏文风序号:28实验二、空间数据库管理及属性编辑一、实验目的1.利用ArcCatalog管理地理空间数据库,理解Personal Geodatabse空间数据库模型的有关概念。
2.掌握在ArcMap中编辑属性数据的基本操作。
3.掌握根据GPS数据文件生成矢量图层的方法和过程。
4.理解图层属性表间的连接(Join)或关联(Link)关系。
二、实验准备预备知识:ArcCatalog 用于组织和管理所有 GIS 数据。
它包含一组工具用于浏览和查找地理数据、记录和浏览元数据、快速显示数据集及为地理数据定义数据结构。
ArcCatalog 应用模块帮助你组织和管理你所有的 GIS 信息,比如地图,数据集,模型,元数据,服务等。
它包括了下面的工具:浏览和查找地理信息。
记录、查看和管理元数据。
创建、编辑图层和数据库导入和导出 geodatabase 结构和设计。
在局域网和广域网上搜索和查找的 GIS 数据。
管理 ArcGIS Server。
ArcGIS 具有表达要素、栅格等空间信息的高级地理数据模型,ArcGIS支持基于文件和DBMS(数据库管理系统)的两种数据模型。
基于文件的数据模型包括Coverage、Shape文件、Grids、影像、不规则三角网(TIN)等GIS数据集。
Geodatabase 数据模型实现矢量数据和栅格数据的一体化存储,有两种格式,一种是基于Access文件的格式-称为Personal Geodatabase,另一种是基于Oracle或SQL Server等RDBMS关系数据库管理系统的数据模型。
GeoDatabase是 geographic database 的简写,Geodatabase 是一种采用标准关系数据库技术来表现地理信息的数据模型。
数据库运维形考任务2-实验2 MariaDB数据库对象管理
数据库运维形考任务2-实验2 MariaDB数据库对象管理本文档旨在介绍MariaDB数据库对象管理的实验2任务。
在这个任务中,我们将研究如何管理MariaDB数据库中的不同对象。
1. 创建和删除数据库1.1 创建数据库要创建一个新的数据库,在MariaDB命令行中执行以下语句:CREATE DATABASE database_name;请将`database_name`替换为您想要创建的数据库的名称。
1.2 删除数据库如果要删除一个现有的数据库,可以使用以下语句:DROP DATABASE database_name;同样,请将`database_name`替换为要删除的数据库的名称。
2. 创建和删除表2.1 创建表在已有的数据库中创建表,使用以下语句:USE database_name;CREATE TABLE table_name (column1 datatype,column2 datatype,...);请将`database_name`替换为已有的数据库的名称,`table_name`替换为要创建的表的名称,`column1, column2, ...`替换为表中的列名和相应的数据类型。
2.2 删除表要删除一个表,使用以下语句:USE database_name;DROP TABLE table_name;请将`database_name`替换为表所属的数据库的名称,`table_name`替换为要删除的表的名称。
3. 创建和删除索引3.1 创建索引要在表的列上创建索引,使用以下语句:USE database_name;CREATE INDEX index_name ON table_name (column);请将`database_name`替换为表所属的数据库的名称,`index_name`替换为要创建的索引的名称,`table_name`替换为包含索引的表的名称,`column`替换为要在其上创建索引的列。
数据库实验二
实验二数据定义一、实验目的1、掌握使用SQL语句创建和删除数据库;2、掌握使用SQL语句创建和删除数据表,创建各种完整性约束,修改表的结构;3、掌握索引的创建和删除方法。
二、实验过程(一)数据库的建立使用CREATE DA TABASE语句创建名为“gongcheng”的数据库。
create database gongcheng(二)数据表的操作1.建立数据表在创建的“gongcheng”数据库中使用SQL语句建立4个关系(可参考课本P74习题5),如下:供应商表S (Sno,Sname,Status,Ctiy)零件表P(Pno,Pname,Color,Weight)工程项目表J(Jno,Jname,City)供应情况表SPJ(Sno,Pno,Jno,QTY)要求:(1)创建每个关系的主键,有外键的创建外键。
(2)S表中的Sname属性列的取值唯一(3)P表中weight属性列的取值范围在1-50之间(4)J表中的Jname取值不能为空并且是唯一的(5)SPJ表中QTY属性列的数据类型必须为int建立供应商表Screate table S(Sno varchar(8)primary key,Sname varchar(20)unique,Status int,City varchar(20))建立零件表Pcreate table P(Pno varchar(8)primary key,Pname varchar(20),Color varchar(4),Weight int check(Weight>=1 and Weight<=50))建立工程项目表Jcreate table J(Jno varchar(8)primary key,Jname varchar(20)unique not null,City varchar(20))建立供应情况表SPJcreate table SPJ(Sno varchar(8),Pno varchar(8),Jno varchar(8),QTY int,primary key(Sno,Pno,Jno),foreign key(Sno)references S(Sno),foreign key(Pno)references P(Pno),foreign key(Jno)references J(Jno))2.修改表的结构用SQL语句完成以下操作:(1)给S表增加Sphone和Semail两个属性列,分别用来存放供应商的联系电话和电子信箱。
数据库系统原理 实验二 以图形界面方式进行数据库和表的创建
实验二以图形界面方式进行数据库和表的创建实验目的:掌握使用图形界面的方式进行库和表的创建,以及数据的插入方法。
实验内容及要求:1、利用图形界面方式创建数据库;2、利用图形界面方式创建一个模式;3、利用图形界面方式在模式中创建表;4、利用图形界面方式在表中插入数据。
实验工具:企业管理器——可以运行在多种操作系统平台上的图形界面总控管理平台。
它允许用户、程序员和管理员进行管理和配置数据库服务器、管理各种数据库对象、管理数据安全、监视数据库服务活动、诊断修改和优化数据库等操作。
企业管理器的总的设计思想是记录下用户通过图形方式进行的操作,并转换成相应的SQL语句。
实验过程及步骤:一、创建TEST数据库创建步骤:打开企业管理器→在企业管理器的【数据库】节点,点击鼠标右键→点击【新建数据库】→弹出【新建数据库窗口】,在该窗口中的“数据库名称”后面输入要创建的数据库名,其他选项默认即可→点击【确定】。
图1 新建数据库二、在TEST数据库中创建SCOT模式实验一中已将TEST数据库创建完成,接下来需要在该数据库中创建SCOT 模式。
模式(Schema)实际上是一个名字空间,它包含命名对象(表,视图,存储过程,函数和序列)。
创建步骤:打开企业管理器→在企业管理器的【模式】节点,点击鼠标右键→点击【新建模式】→弹出【新建模式窗口】,在该窗口中的“模式名”后面输入要创建的模式名,点击【确定】。
图2 新建模式三、创建表在SCOT模式中创建三张表,分别为DEPT部门表、EMP员工表和SALGRADE工资等级表。
其中各表的结构为:DEPT表结构EMP表结构SALGRADE表结构创建步骤:打开企业管理器→在企业管理器的【表】节点,点击鼠标右键→点击【新建表】→弹出【新建表窗口】,在该窗口中的设置列名、数据类型、主键、精度等,点击【保存】,在窗口中输入表名。
图3 创建表四、在表中插入数据DEPT表数据EMP表数据SALGRADE表数据创建步骤:打开企业管理器→在企业管理器的【表】节点中找到插入数据的表名→点击鼠标右键→点击【打开表】下的【返回所有行】→弹出【打开表窗口】,在该窗口中的输入具体数据。
数据库原理实验报告二
LIAOCHENG UNIVERSITY计算机学院实验报告【 2015 ~ 2016 学年第 2 学期】【一、基本信息】【实验课程】数据库原理与应用【设课形式】独立□非独立√【课程学分】0.5【实验项目】实验二、SQL数据操作及查询【项目类型】基础√综合□设计□研究创新□其它[ ] 【项目学时】 4 【学生姓名】傅雪晨【学号】2014204359【系别专业】电子商务【实验班组】 2014.06【同组学生】【实验室名】综合实验楼【实验日期】【报告日期】【二、实验教师对报告的最终评价及处理意见】实验成绩:(涂改无效)指导教师签名:年月日注:要将实验项目、实验课程的成绩评定及课程考核办法明确告知学生,并报实验管理中心备案3.将教材P70表中的数据添加到数据库SPJDB中. 体会执行插入操作时检查实体完整性规则、参照完整性规则和用户定义完整性规则的效果.Insert into S59select's1','精益','20','天津'unionselect's2','盛锡','10','北京'unionselect's3','东方红','30','北京'unionselect's4','丰泰盛','20','天津'unionselect's5','为民','30','上海'Insert into P59select'p1','螺母','红',12 unionselect'p2','螺栓','绿',17 unionselect'p3','螺丝刀','蓝',14 unionselect'p4','螺丝刀','红',14 unionselect'p5','凸轮','蓝',40 unionselect'p6','齿轮','红',30Insert into J59select'J1','三建','北京'unionselect'J2','一汽','长春'unionselect'J3','弹簧厂','天津'unionselect'J4','造船厂','天津'unionselect'J5','机车厂','唐山'unionselect'J6','无线电厂','常州'union4.删除student表中学号为201215121的学生,体会执行删除操作时检查参照完整性规则的效果.将参照完整性中的删除规则改为“级联(层叠)”(CASCADE),重新删除该学生信息。
数据库实验二实验报告
_数据库实验二课程实验报告实验名称:姓名班级学号实验台编号同组学生实验课表现出勤、表现得分25% 实验报告得分50%实验总分操作结果得分25%实验目的:1.掌握SELECT语句的基本语法2.掌握SELECT语句中的SELECT子句的作用及使用方法3.掌握SELECT语句中的WHERE子句的作用及使用方法4.掌握SELECT语句中的ORDER BY子句的作用及使用方法5.掌握集合函数的作用及使用方法6.掌握SELECT语句中的GROUP BY子句的作用及使用方法7.熟悉内连接、外连接、自连接和非限制连接的概念8.能够熟练使用连接查询从多个表中查询数据9.能够熟练地使用子查询得到想要的数据实验内容:一、简单查询1.查询XS表中各个同学的所有信息。
select* from XS;2.查询XS表中各个同学的姓名、专业名和总学分。
select姓名,专业,总学分from XS;3.查询XS表中所有同学的学号、姓名和总学分,结果中各列的标题分别指定为num,name和mark。
select学号num,姓名name,总学分mark from XS;4.查询XS表中的学生数据来自哪些专业(使用DISTINCT子句消除结果集中的重复行)。
select distinct专业from XS;5.查询XS表中各个同学的姓名、专业名和总学分,只返回结果集的前5行。
select top 5 姓名,专业,总学分from XS;6.查询XS表中每个学生的学号、姓名和年龄信息。
select datediff(yyyy,出生日期,'2010')年龄from XS;7.查询XS表中专业为“计算机”的同学的情况。
select*from XS where专业='计算机';8.查询XS表中1979年出生的学生姓名和专业情况。
SELECT姓名,专业from XS where year(出生日期)='1979';9.查询XS表中专业名为“计算机”或“电子”或“数学”的学生的情况。
数据库查询实验报告
实验报告课程名称:数据库系统概论学院:工程学院专业:年级:班级:姓名:学号:指导教师:年12 月10 日教务处制:在 INTO 子句中指出了表名 student,并指出了新增长旳元组在哪些属性上要赋值,属性旳次序可以与 CREATE TABLE 中旳次序不一样样。
INSERT INTO "S-C"."STUDENT"VALUES('','张成民','男','18','CS' );select* from "S-C"."STUDENT":值与属性要一一对应。
INSERT INTO "S-C".sc (sno,cno)VALUES('','1');SELECT*from "S-C".sc;:在新插入旳记录中 GRADE 列自动地赋空值。
或者: INSERT INTO "S-C".scVALUES('','1',null);SELECT*from "S-C".sc;:若直接在 SC 中直接插入选课记录,由于没有指出 SC 旳属性名,在 GRADE 列上要明确给出空值NULL。
创立新表CREATE TABLE dept_age(sdept CHAR (15),avg_age smallint);把系名和平均年龄存入新表insertinto dept_age(Sdept,avg_age) select sdept,avg(sage)from "S-C".studentgroup by sdept;UPDATE "S-C"."STUDENT"SET Sage=22WHERE sno=;select*from "S-C".student;UPDATE "S-C"."STUDENT"SET Sage=sage+1;select*from "S-C".student;UPDATE "S-C"."SC"SET Grade=0where sno in(select snofrom "S-C".studentwhere sdept='cs');SELECT*FROM "S-C".SC;DELETEfrom "S-C".studentWHERE sno='';select*from "S-C".student;DELETEFROM "S-C".SC;SELECT*FROM "S-C".SC;:这条 DELETE 语句将使 SC 成为空表,它删除了 SC 旳所有元组。
武汉轻工大学数据库1508090003实验2报告
武汉轻工大学经济与管理学院实验报告实验课程名称大型数据库管理实验起止日期2017.11.15至2017.11.29 实验指导教师程红莉实验学生姓名郑万芳学生班级学号物流1501班1508090003实验评语实验评分教师签名年月日实验项目名称交互式SQL实验日期2017.11.21 学生姓名郑万芳班级学号1508090003一、预习报告(请阐述本次实验的目的及意义)(1)熟悉数据库的交互式SQL工具。
(2)熟悉通过SQL对数据库进行操作。
(3)完成基本数据表、视图和索引的创建、修改与删除,并完成作业的上机练习,包括数据的查询、修改、插入、更新等操作。
(4)完成SQL上机练习二、实验方案(请说明本次实验的步骤和进程)一、数据定义即在实验一基础上,继续完成数据库下三张表的建立和数据输入。
学生表(s)sno sname age sex98601李强20男98602刘丽21女98603张兵20男98604陈志坚22男98605张兵21女课程表(C)cno cname teacher officeC601高等数学周振兴416C602数据结构刘建平415C603操作系统刘建平415C604编译原理王志伟415选课表(SC)sno cno score98601C6019098601C6029098601C6038598601C6048798602C6019098603C6017598603C6027098603C6045698604C6019098604C6048598605C6019598605C60380二、数据操作1.完成各类查询操作(单表查询、连接查询、嵌套查询、集合查询)。
2.完成各类更新操作(插入数据、修改数据、删除数据)。
三、视图的操作视图的定义(创建和删除)、查询、更新(注意更新的条件)。
四、用SQL完成下列查询(1)给学生表增加一列,属性名为class(班级),然后将已有数据的班级全部设置为class=“9601”Alter table s add class char(4)(2)检索年龄大于21的男学生学号SNO和姓名SNAME。
实验二++用MySQL实现数据库设计++2019
一、熟悉开发环境 练习: 1.安装 MySQL 数据库和 Navicat 软件。启动或停止 MySQL 服务器 2.了解 MySQL 的版本、数据库引擎、字符集、root 账号和默认端口号。 3.学会使用 MySQL 服务器的连接 4.使用 MySQL 的命令输入界面来执行 SQL 命令。 二、使用 MySQL 的命令行方式完成数据库及数据库对象的创建和管理 实验步骤: 1.创建数据库
(1)要求参数: 数据库名称:study (2)创建后用 SHOW 查看刚创建的数据库 study; (3)用 USE 命令选用数据库 study;
(4)用 SQL 语句删除数据库 study; (5)(选做)用 MYSQLADMIN 创建和删除;直接在数据库目录中创建和删除。 2.创建表 (1)根据上述数据库的信息,决定创建几个表,并给每一个表指定一个有意义的表名; (2)根据每个表中每列存储的数据的情况,为每个列指定列名,数据类型,数据的长度,是
四、实现以下查询 1.练习课堂上举例介绍的几类查询; 2.实现以下查询 (1) 检索选修了课程号为C1或C2课程,且成绩高于或等于70分的学生的姓名,课程名和成绩。 (2) 检索姓“王”的所有学生的姓名和年龄。 (3) 检索没有考试成绩的学生姓名和课程名。 (4) 检索年龄大于女同学平均年龄的男学生姓名和年龄。
否允许为空等列的属性; (3)使用命令行方式或者 Navicat 建立所有的表; (4)创建之后,还可以根据具体情况,再对表的结构进行修改;(包括添加列,删除列,修
改已存在的列) 3.实现数据完整性
(1)针对每一个表分析并定义主码(Primary Key) (2)定义 UIQUE 约束
用来规定一个列中的两行不能有相同的值; 例如:希望学生的姓名是唯一的; (3)针对每一个表分析外部码,并利用“关系图”定义外部码(Foreign Key),建立表之间 的参照关系; 以下示例并不完整,请根据上述数据库的信息补充完整 SQL 命令,并创建表和对应的外键。 例如: CREATE TABLE student (
数据库实验二,sql查询语句
实验二:数据查询语言实验内容SQL数据查询语句:例5-1:(选择表中的若干列) 求全体学生的学号、姓名、性别和年龄。
select sno,sname,sex,sage from student;例5-2:(不选择重复行) 求选修了课程的学生学号。
select distinct cno from sc where cno is not null;例5-3:(选择表中的所有列) 求全体学生的详细信息。
select * from student;例5-4:(使用表达式) 求全体学生的学号、姓名和出生年份。
select sno,sname,birthday from student;例5-5:(使用列的别名) 求学生的学号和出生年份,显示时使用别名“学号”和“出生年份”。
select sno as"学号",birthday as"出生年份" from student;例5-6:(比较大小条件) 求年龄大于19岁的学生的姓名和年龄。
select sname,age from studentwhere age>19;例5-7:(比较大小条件) 求计算机系或经济管理系年龄大于18岁的学生的姓名、系和年龄。
select sname,depname ,agefrom student,departmentwhere student.depno=department.depnoand age>18;例5-8:(确定范围条件) 求年龄在19岁与22岁(含20岁和22岁)之间的学生的学号和年龄。
select sno,age from studentwhere age in(19,22);例5-9:(确定范围条件) 求年龄不在19岁与22岁之间的学生的学号和年龄。
select sno,age from studentwhere age not in(19,22);例5-10:(确定集合条件) 求在下列各系的学生信息:数学系、计算机系。
哈工大威海数据库试验2
as
select Student.sclass,Student.sno,sname,cname,grade
from Student LEFT JOIN SC ON (Student.sno=SC.sno AND Student.sclass=SC.sclass )LEFT JOINCourseON(o=o )
where Student.sclass=1 and Student.sno in (
select sno
from SC
where sclass=1
Group by sno
having avg(grade )>85)
4
5,
8,Байду номын сангаас
select 1 sclass,avg(grade) grade
from SC
where Cno =3 and sclass=1
9
insert into Student values(3,1,'张三丰','男',21,'WC')
insert into SC values(3,1,'8',100)
insert into Course values(8,'无机化学',NULL,6)
二、
1,
2
create view S_C_GRADE (sno,sxlass,sname,cname,grade)
as
select Student.sno,Student.sclass,Student.sname,ame,SC.grade
最新国家开放大学电大《MySQL数据库应用》网络核心课实验训练2答案
最新国家开放大学电大《MySQL数据库应用》网络核心课实验训练2答案最新国家开放大学电大《MySQL数据库》网络核心课实验训练2答案盗传必究实验训练2:数据查询操作答案:实验目的:基于实验1创建的汽车用品网上商城数据库Shopping,理解MySQL运算符、函数、谓词,练习Select语句的操作方法。
实验内容: 1.单表查询【实验2.1】字段查询(1)查询商品名称为“挡风玻璃”的商品信息。
分析:商品信息存在于商品表,而且商品表中包含商品名称此被查询信息,因此这是只需要涉及一个表就可以完成简单单表查询。
(2)查询ID为1的订单。
分析:所有的订单信息存在于订单表中,而且订单用户ID也存在于此表中,因此这是只需要查询订单表就可以完成的查询。
【实验2.2】多条件查询查询所有促销的价格小于1000的商品信息。
分析:此查询过程包含两个条件,第一个是是否促销,第二个是价格,在商品表中均有此信息,因此这是一个多重条件的查询。
【实验2.3】DISTINCT(1)查询所有对商品ID为1的商品发表过评论的用户ID分析:条件和查询对象存在于评论表中,对此商品发表过评论的用户不止一个,而且一个用户可以对此商品发表多个评论,因此,结果需要进行去重,这里使用DISTINCT实现。
(2)查询此汽车用品网上商城会员的创建时间段,1年为一段。
分析:通过用户表可以完成查询,每年可能包含多个会员,如果把此表中的创建年份都列出来会有重复,因此使用DISTINCT去重。
【实验2.4】ORDERBY(1)查询类别ID为1的所有商品,结果按照商品ID降序排列。
分析:从商品表中可以查询出所有类别ID为1的商品信息,结果按照商品ID的降序排列,因此使用ORDERBY语句,降序使用DESC关键字。
(2)查询今年新增的所有会员,结果按照用户名字排序。
分析:在用户表中可以完成查询,创建日期条件设置为今年,此处使用语句ORDERBY【实验2.5】GROUPBY(1)查询每个用户的消费总金额(所有订单)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库实验二集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)实验报告册2014 / 2015 学年第2 学期系别计算机科学与技术系实验课程数据库原理专业计算机科学与技术班级姓名学号指导教师实验二——SQL语句一、实验目的1.熟悉SQL的数据查询语言,能使用SQL进行单表查询、连接查询、嵌套查询、集合查询和统计查询,能理解空值的处理;2.熟悉数据库的数据更新操作,能使用SQL语句对数据库进行数据的插入、更新、删除操作;3.熟悉SQL支持的有关视图的操作,能创建、查询及取消视图;4.了解NULL在数据库中的特殊含义,掌握使用SQL进行与空值相关的操作;二、实验预习内容在认真阅读教材及实验指导书【实验1.2 数据查询】、【实验1.3 数据更新】、【实验1.4 视图】和【实验1.6 空值和空集的处理】的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。
1.使用SCHOOL数据库,在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下操作。
请在空白处填写相应的SQL命令。
1)查询年级为2001的所有学生的名称,按编号顺序排列;2)查询所有课程名称中含有data的课程编号;3)统计所有老师的平均工资;4)查询至少选了3门课的学生编号;5)6)查询没有学生选的课程编号;7)查询既选了C++又选了Java课程的学生编号;8)查询选了C++但没选Java课程的学生编号;9)向STUDENTS表中插入“LiMing”的个人信息);10)将“LiMing”的年级改为2002;11)删除所有选了Java课程的学生选课记录;12)求出每门课的课程号、选课人数,结果存入数据库表T1中。
13)查询所有选课记录的成绩并换算为五分制(注意NULL的情况);14)查询成绩小于0的选课记录,统计总数、平均分、最大值和最小值(注意查询结果中NULL的情况);15)按成绩顺序排序显示CHOICES表中所有记录。
(使用ORDER BY排序,注意NULL的情况);16)创建视图V1,显示学生姓名、所选课名称、任课教师名;17)取消V1视图;2.使用STC数据库,在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下操作。
请在空白处填写相应的SQL命令或其它内容。
1)创建视图V2,显示计算机(CS)系学生信息;(结合下面的b)小题,V2视图创建2次,分别使用/不使用WITH CHECK OPTION选项)2)插入元组(99999,张三,20岁,男,PH)到V2中,运行结果如何?(观察WITH CHECK OPTION对结果的影响);3)在V2基础上,查询所有计算机系女生信息;select * from V2where ssex=’女’3.结束本次实验三、实验课后训练1.掌握SQL SERVER中流控制语句及其它常用编程语句;1)使用查询分析器,编写代码,输出乘法口诀表。
2.自行练习实验指导书P24【实验1.2 数据查询】1.2.5自我实践部分;3.自行练习实验指导书P30【实验1.3 数据更新】1.3.5自我实践部分;4.自行练习实验指导书P36【实验1.4 视图】1.4.5自我实践部分;5.自行练习实验指导书P49【实验1.6 空值和空集的处理】1.6.5自我实践部分;四、实验报告1.SQL SERVER中变量声明的命令是什么?输出命令是什么?变量声明:局部变量需要声明,declare @变量名,空格,数据类型(声明变量)。
全局变量不需要声明。
输出命令:select (查询命令)2.SQL SERVER中实现分支和循环的语句分别是什么?分支:用case 测试表达式when 测试值1 then 结果表达式1when 测试值2 then 结果表达式2[else 结果表达式n+1]end循环:用while 布尔表达式begin 语句序列1[break] 语句序列2[continue] 语句序列3end3.在SQL SERVER里使用ORDER BY排序时,NULL值如何处理?使用GROUP BY分组时,NULL值又如何处理的?null 默认为最大值(即:asc 升序<小-->大>,null值排在最后;desc 降序<大-->小>,null值排在最前面4.实验总结(实验过程中出现的问题、解决方法、结果如何或其它)有些较为复杂的嵌套查询,刚开始不知道如何写,然后问同学,理清了思路,并完成了编程。
在这次实验中,有好多因为中英字符问题而出现的命令错误,进行更改后就可以正常执行命令了实验三——数据库完整性与安全性一、实验目的1.理解实体完整性、参照完整性、用户自定义完整性的概念,学习三类完整性的实现,了解违反完整性的结果;2.掌握MS SQL SERVER中的有关用户登录认证及管理方法,熟练使用自主存取控制进行权限管理;二、实验预习内容在认真阅读教材及实验指导书【2.1 实体完整性】、【2.2 参照完整性】、【2.3 用户自定义完整性】、【2.4 触发器】、【2.5 综合案例】和【3.1 用户标识与鉴别】、【3.2 自主存取控制】、【3.3 视图机制在自主存取控制上的应用】、【3.4 Public角色在安全性中的应用】、【3.8 综合案例】的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。
1.使用SCHOOL数据库1)创建一张新表CLASS,包括Class_id(varchar(4)),Name(varchar (10)),Department(varchar(20))三个属性列,其中Class_id为主码;2)执行两次相同的插入操作(’0001’,’01csc’,’cs’),结果如何;2.使用SQL命令创建一张学生互助表,要求:包括学生编号、学生姓名、学生帮助对象的编号,每个学生有且仅有一个帮助对象,帮助的对象必须是已存在的学生。
3.使用STC数据库,修改设置,完成以下2种不同的要求,请写出对应的语句或简述操作过程:1)当更新、删除STU表中记录时,若SC表中有此学生的记录,则拒绝;2)当更新、删除STU表中记录时,若SC表中有此学生的记录,则自动更新或删除;4.使用SQL命令完成以下任务:1)创建Worker表(表结构见指导书P73)2)定义约束U1、U2,其中U1规定Name字段取值唯一,U2规定sage字段上限是28;3)插入一条合法记录;4)插入一条违反U2约束的记录,简述观察到的结果如何?并分析原因;5)去除U1约束;6)修改约束U2,令sage的值大于等于0;7)创建规则rule_sex,规定更新或插入的值只能是M或F,并绑定到Worker的sex字段;8)插入2条记录,一条满足规则rule_sex,一条违反规则,观察结果。
5.使用查询分析器创建触发器并测试,请写出相应的语句:1)为Worker表创建触发器T1,当插入或更新表中数据时,保证所操作记录的sage大于0;2)为Worker表创建触发器T2,禁止删除编号为00001的记录;3)为Worker表创建触发器T3,要求更新一个记录时,表中记录的sage要比老记录的sage的值大。
6.分别用企业管理器和查询分析器实现用户的标识并测试,请写出相应的操作过程或对应的语句:1)设置SQL SERVER的安全认证模式;2)建立名为“LiYong”的登录用户、数据库用户,默认访问SCHOOL数据库,密码为“abcd”;3)取消“LiYong”用户;7.先以sa帐号登录,要实现如下表的权限管理,请按先后顺序写出相应的SQL语句(假设所有用户尚未定义,其密码均为123),并加以必要的说明。
8.创建在SCHOOL数据库中choices上的视图CS_View,授权给计算机系讲授课程号为’10010’的数据库用户“LiYong”,让其具有视图上的SELECT权限;9.对视图CS_View上的score属性列的UPDATE权限授予用户“LiYong”,可以修改学生成绩,但不能修改其它属性列的值;10.假设SCHOOL数据库中,每个学生的登录名都为自己在STUDENTS表中的sid,实现每个学生只能查询自己选课信息,不能查询别人的成绩,也不能修改自己的成绩。
11.结束本次实验三、实验课后训练1.自行练习实验指导书P81【实验2.5 综合案例】综合案例1;2.自行练习实验指导书P122【实验3.8 综合案例】综合案例;四、实验报告1.授权给public与授权给指定用户有什么区别?实际应用中,哪个更安全些?2.SQL SERVER中的角色有什么作用?3.实验总结(实验过程中出现的问题、解决方法、结果如何或其它)实验四——数据库编程一、实验目的1.掌握ODBC的配置;2.能编写简单的存储过程和函数,并调用;二、实验预习内容上机前请预习以下内容,并在空白处填写相应的步骤或命令。
1.配置ODBC,使用VFP中的表单,查询SCHOOL数据库中STUDENTS表中所有记录。
2.编写存储过程并调用,请写出相应命令;1)在查询分析器中,编写存储过程usp_get_stuinfo ,使用一个名为@xm能够传送进存储过程的参数。
允许以学生的姓名查询该生的基本信息;2)在查询分析器中调用存储过程查询“赵飞”同学的基本信息的语句;3.编写函数并调用,请写出相应命令;1)在查询分析器中,定义内联表值函数Fun,用于返回各职称的教师基本信息;2)在查询分析器中,使用Fun进行选择以获得“教授”职称的教师基本信息;3)在查询分析器中,编写标量函数Func,用于返回两个整数中的最大值;4)在查询分析器中,调用此函数,输出两个数中的最大值;5)在SQL SERVER中定义函数FUNS,返回指定参数的平方,配置好ODBC后,在VFP 中调用FUNS并输出结果;4.结束本次实验三、实验课后训练1.自行学习实验指导书P130【实验4.1 SQL SERVER事务的定义】;2.自行学习实验指导书P137【实验4.2 SQL SERVER 2005事务与锁】;3.自行练习实验指导书P165【实验4.6 游标及游标并发】;(P167 4.6.3 实验内容要完成)四、实验报告1.什么是ODBC2.内联表值函数、标量函数、存储过程有什么区别?3.实验总结(实验过程中出现的问题、解决方法、结果如何或其它)。