重庆理工大学实验二SQL语言的DDL(共5篇)

合集下载

数据库实验2-数据库及表的创建与管理(DDL应用)

数据库实验2-数据库及表的创建与管理(DDL应用)

实验二数据库及表的创建与管理(DDL应用)姓名:学号:专业:网络工程班级:20网络工程同组人:无实验日期:一、【实验目的与要求】1.熟悉SQL Server 2005 的环境2.了解使用企业管理器创建数据库的过程和方法3.了解使用企业管理器创建数据库的过程和方法二、【实验准备】1.安装并配置好SQL Server 2005数据库2.设计好数据库创建各参数,准备好测试数据三、【实验要求】1.完成数据库的创建与管理2.完成表的创建与管理。

3. 熟悉SQL Server 2005中企业管理器和查询分析器两个常用管理工具四、【实验内容】1. 数据库创建与管理2. 表的创建、管理及数据操作。

五、【实验步骤】1. 准备工作(1)安装完成SQL Server 2005安装。

(2) 打开企业管理器(3)连接数据库2.数据库的创建与修改准备工作:在C盘下创建目录Exam03,用于存放数据库创建时产生的数据文件。

(1) 数据库的创建使数据定义语句Create Database可以创建数据库,该语句在使用时可指明数据文件和日志文件存放的路径,初始数据文件的大小等参数。

阅读以下是创建数据库SalesDB的SQL语句,理解其功能,并置于查询分析器中执行:create database SalesDBon(name= SalesDB_data,--数据文件的逻辑名称,注意不能与日志逻辑同名filename='C:\Exam03\SalesDB.mdf' ,--物理名称,注意路径必须存在size=20, --数据初始长度为10Mmaxsize=100, --最大长度为100Mfilegrowth=5 --数据文件每次增长1M)log on(name= SalesDB_log,filename='C:\Exam03\SalesDB.ldf ' ,size=20 ,maxsize=50 ,filegrowth=5)在查询分析器中执行上述语句建立数据库SalesDB。

SQL实验二:数据库查询实验报告

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 分以上的学生姓名及所在系。

Sql语法---DDL

Sql语法---DDL

Sql语法---DDL1.SQL的定义结构化查询语⾔(Structured Query Language)简称SQL,SQL语句就是对数据库进⾏操作的⼀种语⾔。

2.SQL的作⽤通过SQL语句我们可以⽅便的操作数据库中的数据、表、数据库等。

3.SQL的分类1. DDL(Data Definition Language)数据定义语⾔⽤来定义数据库对象:数据库,表,列等。

关键字:create, drop,alter等2. DML(Data Manipulation Language)数据操作语⾔⽤来对数据库中表的数据进⾏增删改。

关键字:insert, delete, update等3. DQL(Data Query Language)数据查询语⾔⽤来查询数据库中表的记录(数据)。

关键字:select等4. DCL(Data Control Language)数据控制语⾔(了解)⽤来定义数据库的访问权限和安全级别,及创建⽤户。

关键字:GRANT, REVOKE等4.SQL语法 1.DDL语句操作数据库 创建数据库 1. 直接创建数据库 CREATE DATABASE 数据库名; 2. 判断是否存在并创建数据库 CREATE DATABASE IF NOT EXISTS 数据库名; 3. 创建数据库并指定字符集(编码表) CREATE DATABASE 数据库名 CHARACTER SET 字符集; 查看数据库 1. 查看所有的数据库 SHOW database; 2. 查看某个数据库的定义信息 SHOW CREATE DATABASE 数据库名; 修改数据库 修改数据库字符集格式 ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集; 删除数据库 DROP DATABASE 数据库名; 使⽤数据库 1. 查看正在使⽤的数据库 SELECT DATABASE() ; 2. 使⽤/切换数据库 USE 数据库名;  2.DDL操作表 1.创建表 CREATE TABLE 表名 ( 字段名1 字段类型1, 字段名2 字段类型2 ); 2.查看表 1. 查看某个数据库中的所有表 SHOW TABLES ; 2. 查看表结构 DESC 表名; 3. 查看创建表的SQL语句 SHOW CREATE TABLE 表名; 3.快速创建⼀个表结构相同的表 CREATE TABLE 新表名 LIKE 旧表名; 4.删除表 1. 直接删除表 DROP TABLE 表名; 2. 判断表是否存在并删除表 DROP TABLE IF EXISTS 表名; 5.修改表结构 1. 添加表列 ALTER TABLE 表名 ADD 列名类型; 2. 修改列类型 ALTER TABLE 表名 MODIFY列名新的类型; 3. 修改列名 ALTER TABLE 表名 CHANGE 旧列名新列名类型; 4 . 删除列 ALTER TABLE 表名 DROP 列名; 5. 修改表名 RENAME TABLE 表名 TO 新表名; 6. 修改字符集 ALTER TABLE 表名 character set 字符集;。

实训sql关系数据库实训练习含答案,DML语句及DDL语句

实训sql关系数据库实训练习含答案,DML语句及DDL语句

DML 语句及 DDL 语句实训内容 】1、数据操纵语句实训目的】 掌握 INSERT 、UPDATE 、DELETE 三个数据操作语句; 掌握数据库对象的定义CREATE )、修改( ALTER )及删除( DELETE )操作。

用 INSERT 、UPDATE 、DELETE 三个语句来完成对数据进行添加、更新及删 除操作,这三个语句能修改数据库中的数据,但不返回结果集。

2、创建和修改表结构SQL 的DDL 语句能创建和修改数据库的逻辑结构, 包括CREATE 语句、ALTER 语句及 DROP 语句。

3、创建和修改视图 在 SQL 中,视图是一种类表对象。

或称之为衍生表(虚拟表) ,它并不在物理 上包含数据,但是它的定义是永久性的。

用 CREAE VIEW 定义视图。

4、请完成以下数据操纵语句: 1) 学号为“ 1031231”的学生,新选修了 3号课程,成绩未知。

insert into 选课表 values('1031231',3,NULL) 2) 为 GZ02 计 6班未选 4号课程的学生补选 4 号课程。

insert into 选课表 (学号 ,课程号 ) select 学号 ,4 from 学生表 where 班级 ='GZ02 计 6' and 学号 not in (select 学号 from 选课表 where 课程号 =4) 3) 将名字为 '王玲俐 '的学生的年龄修改为 18 岁,班级改为 'GZ02 计 8'。

update 学生表set 年龄=18,班级='GZ02计8' where 姓名='王玲俐' 4) 将“软件工程”这门课成绩在 60 分以下的学生的成绩统一修改为 59 分。

update 选课表 set 成绩 =59from 选课表,课程表 where 选课表•课程号=课程表•课程号and 课程名='软件工程' and 成绩<60 up date 选课表set 成绩=59 where 成绩<60 and 课程号=( select 课程号from 课程表where 课程名='软件工程'5)删除课程号为1号的所有的选课信息。

实验二 SQL语言——数据定义操作

实验二 SQL语言——数据定义操作

实验二SQL语言——数据定义操作一、实验时间:二、实验地点:实训楼402室三、实验条件与环境1.通用PC机2.PC机必须安装Windows 2000系列、Windows XP系列或Windows NT操作系统平台3.PC机还须安装Microsoft SQL Server 2000 任意一版本(个人版、标准版、企业版)4.最好有一台公用的SQL Server 2000 服务器四、实验目的1.通过上机实验掌握Transact-SQL语句的编写及运行过程2.通过上机实验掌握数据库的建立与删除过程3.通过上机实验掌握数据表的建立与删除过程4.通过上机实验掌握数据表的相关修改操作(如为表创建新列,建立及删除数据约束条件等)5.通过上机实验掌握为数据表创建索引以及删除索引的操作6.通过上机实验了解Transact-SQL与DB2-SQL两种SQL语言在语法结构及功能上的异同五、实验要求:1.实验内容中涉及到的具体操作均通过SQL语言来实现2.实验完成后需要书写实验报告,本次实验报告需在下次实验课堂上上交六、实验内容:1.熟悉SQL Server 2000软件界面、构架及其基本操作使用环境2.在本地SQL服务器上分别建立名为MyDB和MyDB1的数据库3.在数据库MyDB1中建立数据表MyTab(a:int,b:float)4.在数据库MyDB中建立以下四个数据表(S,P,J,SPJ)S表(SNO:字符串类型SNAME:字符串类型STA TUS:整数类型CITY:变长字符串类型)P表(PNO:字符串类型PNAME:变长字符串类型COLOR:字符串类型WEIGHT:实数类型)要求:PNO属性值必须不重复且不允许取空值,PNAME属性值不允许取空值J表(JNO:字符串类型JNAME:变长字符串类型CITY:变长字符串类型)JNAME属性值不允许取空值JNO:字符串类型QTY:整数类型)QTY属性值不能为空值5分别删除数据表MyTab和数据库MyDB16.数据表的修改操作(1)为S表新建一属性名为PHONE的列,其数据类型为字符串类型(2)为J表的JNAME属性列创建一个该属性列值不为空的约束条件NotnullJname (3)删除J表中JNAME属性列上取值不为空的约束条件NotnullJname(4)为P表的PNO属性列创建一个该属性列值互不重复的约束条件UnqPno(5)删除P表中PNO属性列上取值不重复的约束条件UnqPno(6)为SPJ表的QTY属性列建立取值必须是100的整数的约束条件QTYNum7.索引的创建操作(1)在S表的SNO属性列上建立一个名为SnoIndex的唯一索引(2)为P表的PNO属性列创建一个名为PnoIndex的唯一索引,索引值按降序排列(3)为J表的JNAME属性列创建一个名为JnameIndex的聚簇索引(4)为SPJ表的SNO、PNO、JNO三属性列创建一个名为SPJIndex的聚簇索引8.索引的删除操作(1)删除S表上的SnoIndex索引(2)删除P表上的PnoIndex索引(3)删除J表上的JnameIndex索引(4)删除SPJ表上的SPJIndex索引七、实验总结:数据定义功能是关系数据库管理系统对数据操作的一个主要功能。

实验三 SQL语言的DDL及DML初步

实验三 SQL语言的DDL及DML初步

实验三SQL语言的DDL及DML初步1.1 实验目的本实验的目的是使学生熟悉SQL Server的查询分析器的使用用法,熟悉SQL Server的常用数据类型,熟练掌握简单表的创建与修改。

此外,通过此次实验,了解DDL语言的CREATE、DROP和ALTER对表进行操作;了解DML语言的INSERT语句,学会SQL Server 2000的查询分析器中用DML语言对表中的数据进行插入。

1.2 实验内容1、启动数据库服务软件SQL Server 2000的查询分析器。

(1)在程序菜单中选择Microsoft SQL Server,如下图1所示。

图1(2)选中查询分析器,如图2所示。

图 2(3)点击查询分析器后,出现连接到SQL Server窗口,如图3所示。

图 3(4)点击确定,出现SQL查询分析器主界面,如图4所示。

(5) 选择查询菜单,点击“更改数据库”,如图5所示。

(6)出现选择数据库窗口,如图6所示。

图6(7) 选择要修改的数据库,点击确定,进行修改。

2、在查询分析器中建立表(1)在查询分析器的查询窗口中输入SQL语句,如图7所示。

图7(2) 点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图8所示。

图8提示命令成功完成,或者报告出错信息。

3、查询分析器中向表添加数据(1)在查询分析器的查询窗口中输入SQL语句,如图9所示。

图9(2) 点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图10所示。

图101.3 实验任务一、实验任务11、打开数据库SQL Server 2000的查询分析器,用Create Table建表aa,表结构如下所示:2、用Create Table建表bb,表结构如下所示:3、用Drop Table删除表aa。

4、用Alter Table修改表bb,添加一个字段Bb4,类型Varchar,长度20。

二、实验任务25、打开数据库SQL Server 2000的查询分析器,用Create Table建表cc,表6、用INSERT语句对表cc插入6条记录三、实验内容37、基本表的建立:a)建立一个“学生”表Student,它由学号xh、姓名xm、性别xb、年龄nl、所在系xi五个属性组成,其中学号属性为主键,姓名值是唯一的;b)建立“课程”表kc,包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键;c)建立“成绩登记”表cjdj,包括学号xh,程号kch,成绩cj,要求建立主键及与student及kc表连接的外码。

sql ddl语法

sql ddl语法SQL(Structured Query Language)是一种用于管理关系型数据库的语言,DDL(Data Definition Language)是SQL的一部分,用于定义数据库的结构和组件。

DDL语法包括以下几个重要的部分:1. CREATE TABLE: 用于创建数据库中的表格。

语法示例,CREATE TABLE table_name (column1 datatype, column2 datatype, ...);2. ALTER TABLE: 用于修改数据库中现有表格的结构。

语法示例,ALTER TABLE table_name ADD column_name datatype;3. DROP TABLE: 用于删除数据库中的表格。

语法示例,DROP TABLE table_name;4. CREATE INDEX: 用于创建索引,以加快对表格的查询速度。

语法示例,CREATE INDEX index_name ON table_name(column_name);5. DROP INDEX: 用于删除索引。

语法示例,DROP INDEXindex_name;6. CREATE VIEW: 用于创建虚拟表格。

语法示例,CREATE VIEW view_name AS SELECT column1, column2 FROM table_name WHERE condition;7. DROP VIEW: 用于删除虚拟表格。

语法示例,DROP VIEW view_name;以上是DDL语法的基本部分,它们用于定义数据库的结构,包括表格、索引和视图的创建、修改和删除。

在实际应用中,需要根据具体的数据库管理系统(如MySQL、Oracle、SQL Server等)来使用相应的DDL语法。

希望这些信息能够帮助你更好地理解DDL语法。

SQL数据库实验二 SQL语言

实验二SQL语言一、实验目的1.掌握SQL语言的语法2.学会编写和调试SQL语言3.学会分析相应实验结果二、实验内容本次实验所有题目要求用SQL语句实现,不要用SSMS工具实现。

1.使用SQL语言在“教师授课管理数据库”中创建新表:2.在系表中插入至少3条记录,内容为计算机系、英语系、经济系等。

3.修改教师表的结构:(1)增加一个新列:Tel 联系电话字符串,长度为15 允许空(2)在该列中填充数据(3)增加Dept列为引用系表的系名的外码(注意数据内容一致)4.查询计算机系教师的姓名、年龄。

5.查询英语系教师的最大年龄和最小年龄。

6.统计每个系男女教师的人数。

7.查询教师总数超过3人的系的名称和系主任姓名。

8.删除“张立”教师的教师信息。

9.如果他曾授过课,则相应的授课信息是够还存在?10.将计算机系的系名改为计算机科学系。

三、实验过程1.使用SQL语言在“教师授课管理数据库”中创建新表:CREATE TABLE系表(Dno nchar(4)PRIMARY KEY,Dname NCHAR(20)NOT NULL,Ddimo NCHAR(7),FOREIGN KEY(Ddimo)REFERENCES教师表(Tno))2.在系表中插入至少3条记录,内容为计算机系、英语系、经济系等。

INSERTINTO系表(Dno,Dname,Ddimo)VALUES('101','计算机系','10002');系表(Dno,Dname,Ddimo)VALUES('102','英语系','10003');INSERTINTO系表(Dno,Dname,Ddimo)VALUES('103','经济系','10004');3.修改教师表的结构:(1)增加一个新列:Tel 联系电话字符串,长度为15 允许空ALTER TABLE教师表ADD Tel nchar(15)null(2)在该列中填充数据UPDATE教师表SET Tel=151****3221WHERE Tname='王老师';UPDATE教师表SET Tel=151****2254WHERE Tname='孙老师';UPDATE教师表SET Tel=138****5670WHERE Tname='高老师';UPDATE教师表SET Tel=138****5645WHERE Tname='李老师';UPDATE教师表SET Tel=189****4521WHERE Tname='方老师';(3)增加Dept列为引用系表的系号的外码(注意数据内容一致)ALTER TABLE系表ADD UNIQUE(Dname);ALTER TABLE教师表ADD CONSTRAINT教师表Dept_系表DnameFOREIGN KEY (Dept)REFERENCES系表(Dname);4 .查询计算机系教师的姓名、年龄。

实验三 SQL语言的DDL 实验报告

实验三SQL语言的DDL 实验报告实验三 SQL语言的DDL 实验报告实验任务1.打开数据库SQL Server 2008的查询分析器,用Create Table建表Student,course,sc。

数据库的名称为“学生选课”,各个表结构如教材P85页所示。

以下要求用T-SQL来实现:创建student表:CREATE table Student (Sno CHAR(9) PRIMARY KEY, Sname CHAR(20) UNIQUE, Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) );创建course表:CREATE TABLE Course(Cno CHAR(4) PRIMARY KEY, Cname CHAR(40), Cpno CHAR(4), Credit SMALLINT,FOREIGN KEY (Cpno) REFERENCES Course(Cno) );创建sc表:CREATE 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) );2.向表中填入教材P82数据。

3.向Student 表增加“入学时间”列(列名为Scome,日期型)ALTER TABLE Student ADD Scome DATE;4.将年龄的数据类型改为整型。

ALTER TABLE Student ALTER COLUMN Sage INT;5. 为Student中Sname添加列级完整性约束,不能为空。

为Student中Sno 添加列级完整性约束,取值唯一,不能为空。

Sname添加列级完整性约束,不能为空ALTER TABLE Student ADD CONSTRAINT c1 CHECK(Sname IS NOT NULL); 图示为插入元组时Sname列内为空时数据输入失败:Sno添加列级完整性约束,取值唯一,不能为空ALTER TABLE Student ADD CONSTRAINT c2 UNIQUE(Sno)ALTER TABLE Student ADD CONSTRAINT c3 CHECK(Sno IS NOT NULL);6. 删除Student中Sname 列级完整性。

实验二SQL定义语言

实验⼆SQL定义语⾔1.切换到Access的SQL视图或者打开SQL Server查询分析器进⾏定义操作2.⽤SQL语⾔CREATE TABLE语句创建学⽣表student、课程表course和选课表SC;(字段类型及长度参照实验⼀)Create table student (sno char(8) ,sname varchar(8),ssex char(2),sdept varchar(20),sage int); Create table course(cno char(3) ,cname varchar(20),credit numeric(18,1),cpno char(3));Create table sc(sno char(8) ,cno char(3) ,grade numeric(18,1));3.⽤SQL语⾔ALTER语句修改表结构;a)STUDENT表中SNO设为⾮空和唯⼀;Alter table student alter column sno char(8) not null;Alter table student add unique(sno);b)STUDENT表中增加⼀个字段SBIRTH,类型设置为⽇期时间类型,增加⼀个ADDRESS字段,类型为⽂本(字符);Alter table student add sbirth datetime;Alter table student add address text;c)删除STUDENT表中ADDRESS字段;Alter table student drop column address;d)COURSE表中CNO字段设为⾮空和唯⼀;Alter table course alter column cno char(3) not null;Alter table course add unique(cno);4.重新定义⼀个简单表,然后⽤SQL语⾔DROP语句删除该表结构;创建表DX Create table DX(dx text)删除表DX drop table DX5.⽤SQL语⾔CREATE INDEX语句定义表STUDENT的SNAME字段的降序索引;Create unique index STUsname on student(sname desc);6.⽤SQL语⾔CREATE INDEX语句定义表SC的GRADE字段的升序索引;Create unique index SCgrade on sc (grade);7.⽤SQL语⾔DROP语句删除索引;Drop index STUsname on student;Drop index SCgrade on sc;8.输⼊部分数据,并试着修改其中的错误;在主键列为⾮空的前提下:设置student表中sno为主键Alter table student add constraint PKsno primary key(sno) 删除主键alter table student drop constraint PKsno设置course表中cno为主键Alter table course add constraint PKcno primary key(cno)删除主键alter table course drop constraint PKcnoAlter table sc alter column sno char(8) not null;Alter table sc alter column cno char (3) not null;设置sc表中sno,cno联合为主键alter table sc add constraint PKsnocno primary key(sno,cno), Constraint FKsno foreign key(sno) references student(sno), Constraint FKcno foreign key(cno) references course(cno);删除主键alter table sc drop constraint PKsnocno;删除外键alter table sc drop constraint FKsno,FKcno;建表的时候直接定义主键和外键建⽴student表Create table student(sno char(8) primary key,sname varchar(8),ssex char(2),sdept varchar(20),sage int);建⽴course表Create table course(cno char(3) primary key,cname varchar(20),credit numeric(18,1),cpno char(3));建⽴sc表Create table sc(sno char(8) foreign key references student(sno),cno char(3) foreign key references course (cno) ,grade numeric(18,1),Constraint SCsnocno primary key (sno,cno));。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

重庆理工大学实验二SQL语言的DDL(共5篇)第一篇:重庆理工大学实验二 SQL语言的DDL实验二SQL语言的DDL一.实习目的及要求:本次实验了解SQL的数据定义语句:(1)创建数据库、表、索引(2)增加、删除表结构(3)修改表结构二实习内容:用SQL语句建立SPJ数据库(见书P74,5),数据库名取自己的名字,如:张三。

2在建好了的SPJ数据库中建立S、P、J、SPJ共4个表的表结构。

要求:(1)为属性选择合适的数据类型;(2)为SPJ表增加一供应日期列,列名为SUPDATE,日期型;(3)定义每个表的主码;(4)定义上述4个表的表级约束:定义SPJ、S、P、J表之间的FOREIGNKEY(外码)约束。

(5)为S、P、J表的SNAME、PNAME、JNAME列定义UNIQUE 约束;约束名分别命名为UQ_SNAME, UQ_PNAME,UQ_JNAME;(6)实现DATE属性的Check(检查)约束: SUPDATE(7)删除P表PNAME列的唯一性约束(8)将P表中PNAME列的数据类型改为可变字符串型;用SQL语言在SPJ表上建立一个唯一性索引。

要求:按属性QTY的降序建立索引。

使用企业管理器(Enterpriser Manager),在数据库SPJ上建立一个关系图。

检查SPJ、S、P、J四表的关系是否正确。

5.将以上的SQL语言保存,提交实验报告。

第二篇:实验三 SQL语言的DDL实验三视图、存储过程的定义和使用一、实验目的SQL(Structured Query Language)语言是关系数据库的标准语言。

是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询,SQL语言是一个通用的、功能极强的关系数据库语言。

本次实验了解DDL语言的CREATE、DROP、ALTER对视图和存储过程的操作,学会SQL Server 2000的查询分析器中实现视图的创建、查看、修改和删除;实现对存储过程的创建、修改、撤消和运行。

本实验需2学时。

二、实验内容1.启动数据库服务软件SQL Server 2000的查询分析器,用如下语句对视图进行操作,详细的语法格式参看课本相应章节:Create view 创建视图Drop view删除视图Select * from 视图名查询视图2.如下语句对存储过程进行操作,详细的语法格式参看课本相应章节:Create proc 过程名Dropproc 过程名三、实验任务1.打开数据库SQL Server 2000的查询分析器,用Create Table 建表student。

2.向表中填入教材P82数据3.根据student表创建视图V_stud.4.使用视图v_stud,向原student表中插入一行记录。

5.根据P82,创建SC表,创建视图,通过视图查看学生的姓名和选课情况。

6.删除视图v_stud.7.根据student,sc,c三个表,创建存储过程proc1,查看学生的姓名,选课的课程名和相应的成绩。

8.执行proc19.修改该存储过程为p_proc,并删除proc1.运行以上语句,并观察结果.10.将以上的SQL语言以报告的形式写出来,以备老师检查。

第三篇:实验四SQL语言实验四 SQL语言——数据更新操作2007-06-16 01:12:44|分类:课程作业 |标签:数据更新操作sql 语言|字号大中小订阅实验四 SQL语言——数据更新操作三、实验条件与环境1.通用PC机2.PC机必须安装Windows 2000系列、Windows XP系列或Windows NT操作系统平台 3.PC机还须安装Microsoft SQL Server 2000 任意一版本(个人版、标准版、企业版)4.最好有一台公用的SQL Server 2000 服务器四、实验目的1.通过上机实验进一步加深对SQL数据更新(插入、修改及删除)语句的基本语法格式的掌握2.通过上机实验掌握单个元组插入操作的实现过程3.通过上机实验掌握多个元组插入操作的实现过程4.通过上机实验掌握单个元组修改操作的实现过程5.通过上机实验掌握多个元组修改操作的实现过程6.通过上机实验掌握单个元组删除操作的实现过程7.通过上机实验掌握多个元组删除操作的实现过程8.通过上机实验加深对更新操作时数据库中数据一致性问题的了解9.通过上机实验加深对约束条件在数据更新操作执行中的作用问题的了解五、实验要求1.本实验所有实验内容要求在规定时间(2课时)内完成2.实验内容中涉及到的各更新操作均通过SQL语言来实现3.本实验中各操作内容的执行均会更新当前数据库,为便于下一实验内容的顺利执行,请在每成功完成一个实验内容后重新导入初始状态下的实验数据库4.实验完成后需要书写实验报告,本次实验报告需在下次实验课堂上上交六、实验内容:1.在S表中插入元组“s6,华誉,402.在J表中插入元组“j8,传感器厂”3.对每一个供应商,求他为各种工程供应零件的总数量,并将此结果存入数据库4.将P表中PNO值为p6的元组的color属性值改为绿,weight 属性值改为605.将SPJ表中前4个元组的qty属性值统一修改为3006.将S表中city属性名含有“京”或“津”的相应status属性值增加1007.将供应商s2为“一汽”工程项目所供应的零件数量修改为20008.将全部红色零件的颜色修改为浅红色9.由s5供给j4的零件p6改为由s3供应,请在数据库中作必要的数据修改10.在SPJ表中新增一列属性名为SDATE的属性列,对该表中的每一元组在SDATE属性列上填上实验当时的日期和时间11.删除所在城市为“广州”的供应商记录12.删除所有零件名称中第一个字为“螺”字的零件记录,并在供应情况表中删除相应的记录13.删除s3和s4两供应商为“三建”工程供应“螺母”或“螺丝刀”零件的相应供应情况数据信息七、实验总结:数据更新操作(插入操作[INSERT]、修改操作[UPDATE]、删除操作[DELETE])是关系数据库系统中一种极为重要、数据更新能力强、使用灵活的数据操纵方式,此数据操作的使用不是完全独立的,而是和数据定义操作、数据查询操作有着紧密联系的。

实验完成后,请同学们总结一下SQL语言在实现各种数据更新操作时与数据定义操作和数据查询操作两类操作之间的相互联系,通过深入总结,从而学会利用SQL语言实现较为复杂的数据更新任务。

实验四 SQL语言——数据更新操作实验内容参考答案六、实验内容1.在S表中插入元组“s6,华誉,40use shiyangoinsertinto svalues('s6','华誉',40,'广州',************')2.在J表中插入元组“j8,传感器厂”use shiyangoinsertinto j(jno,jname)values('j8','传感器厂')3.对每一个供应商,求他为各种工程供应零件的总数量,并将此结果存入数据库use shiyangocreate table TotalQTYofS(SNO char(4)not null unique,T otalQTY int);insertinto TotalQTYofSselect sno,sum(qty)from spjgroup by sno;4.将P表中PNO值为p6的元组的color属性值改为绿,weight 属性值改为60use shiyangoupdate pset color='绿',weight=60where pno='p6'5.将SPJ表中前4个元组的qty属性值统一修改为300use shiyangoupdate spjset qty=300from(select top 4 * from spj order by sno)as table1where spj.sno=table1.sno6.将S表中city属性名含有“京”或“津”的相应status属性值增加100use shiyangoupdate sset status=status+100where city like '%京%' or city like '%津%7.将供应商s2为“一汽”工程项目所供应的零件数量修改为2000use shiyangoupdate spjset qty=2000where sno='s2' and jno=(select jnofrom jwhere jname='一汽')8.将全部红色零件的颜色修改为浅红色use shiyangoupdate pset color='浅红'where color='红'9.由s5供给j4的零件p6改为由s3供应,请在数据库中作必要的数据修改use shiyangoupdate spjset sno='s3'where sno='s5' and jno='j4' and pno='p6'10.在SPJ表中新增一列属性名为SDATE的属性列,对该表中的每一元组在SDATE属性列上填上实验当时的日期和时间use shiyangoalter table spjadd SDATE datetimeupdate spjset SDATE=getdate()11.删除所在城市为“广州”的供应商记录use shiyangodeletefrom swhere city='广州'12.删除所有零件名称中第一个字为“螺”字的零件记录,并在供应情况表中删除相应的记录use shiyangodeletefrom pwhere pname like '螺%'deletefrom spjwhere pno in(select pnofrom pwhere pname like '螺%')13.删除s3和s4两供应商为“三建”工程供应“螺母”或“螺丝刀”零件的相应供应情况数据信息use shiyangodeletefrom spjwhere(sno='s3' or sno='s4')and jno in(select jnofrom jwhere jname='三建')and pno in(select pnofrom pwhere pname='螺母' or pname='螺丝刀')第四篇:SQL数据库实验报告实验二实验2SQL Server数据库的管理1.实验目的(1)了解SQL Server 数据库的逻辑结构和物理结构的特点。

相关文档
最新文档