精华内容
下载资源
问答
  • 请在MySQL 或者SQL Server 数据管理软件完成下面操作: 1、 用命令方式创建名为TestDB2的数据库; 2、 用命令方式向以上数据库添加名为Student、Course和SC的三张数据表。 3、 向三张数据表Student、Course和SC录入...

    知识点

    1. 创建数据库

    CREATE DATABASE 数据库名 DEFAULT CHARACTER SET utf8 COLLATE utf8_ general ci;

    • DEFAULT CHARACTER SET utf8 COLLATE utf8_ general ci ---------以utf8编码

    2.创建表

    CREATE TABLE table_name (column_name column_type);

    3.向表中插入数据

    方法一: 使用insert/replace语句添加
    1.INSERT…VALUES语句

    INSERT INTO <表名> [ <列名1> [ , … <列名n>] ]
    VALUES (值1) [… , (值n) ];
    

    也可以:

    insert/replace into table_name values ('2001001','李勇','男','20','CS'),('2001002','刘晨','女','19','IS');
    

    2.INSERT…SET语句

    INSERT INTO <表名>
    SET <列名1> = <值1>,
            <列名2> = <值2>,
            …
    

    方法二: 利用load data语句装入
    例:
    假设 teacher 表的数据已放在“d:\ teacher. txt"中,现将teaching. txt的数据插人到teacher 表中。

    load data local infile "d:\\teacher.txt" into table teacher;
    

    注意:
    (1) teacher,txt各行文本之间要用制表符< Tab>分隔,每行最后也加< Tab>分隔符
    (2) “d:\teacher. txt”:要用“\”,表示斜线。

    4.修改表(update)

    用update…set… 命令可以修改一个表的数据。一般表记录修改的语法格式如下:

    update table. name
    set col. name1 =[,col._name2 =expr2…]
    [where子句]
    

    说明:
    (1) set子句:根据where子句中指定的条件,对符合条件的数据行进行修改。若语句中不设定where子句,则更新所有行。
    (2) exprl、expr2…可以是常量、变量或表达式。可以同时修改所在数据行的多个列值,中间用逗号隔开。

    练习内容:

    请在MySQL 或者SQL Server 数据管理软件完成下面操作:
    1、 用命令方式创建名为TestDB2的数据库;
    2、 用命令方式向以上数据库添加名为Student、Course和SC的三张数据表。
    3、 向三张数据表Student、Course和SC录入数据。(数据参见 教材示例表 Excel表)
    4、 修改Student结构,添加籍贯(SJG)的字段,类型字符型,长度20

    操作

    1. 创建数据库(并以utf8编码)

    CREATE DATABASE testdb2 DEFAULT CHARACTER SET utf8 COLLATE utf8_ general ci;
    
    

    2. 创建三张表

    create table Student(Sno int(9),Sname varchar(20),Ssex varchar(20),Sage int(9),Sdept varchar(20));
    
    create table Course(Cno int(9),Cname varchar(20),Ccredit int (9),Cpno int(9),primary key(Cno));
    
    create table SC(Sno int(7),Cno int(9),Grade int(9));
    
    • 结果:
      三张表

    3. 录入数据

    • student表:
    insert into Student values ('2001001','李勇','男','20','CS'),('2001002','刘晨','女','19','IS');
    insert into Student values ('2001003',‘王敏’,‘女’,‘18’,‘MA’),('2001004','张立','男','19','IS'), ('2001005','刘云','女','18','CS'), ('2001101','张林','男','18','CS'), ('2001102','程明','男','18','IS'), ('2001103','王艳','女','19','CS'), ('2001104','严平平','男',20,'CS'), ('2001201','王敏','女',19,'MA'), ('2001202','王林','女',20,'MA'), ('2001203','李计','男',21,'MA'), ('2001304','孙祥欣','男','17','IS'),('2001304','孙研','女','18','IS'),('2001304','孙小','男','18','CS');
    
    • Course表
    insert into Course values('1','数据库','4','5'),('2','数学',’6',null),('3','信息系统','3','1'),('4','操作系统','4','6'),('5','数据结构','4','7'),('6','数据处理','3', null),('7','PASCAL语言','4','6'),('8','计算机基础','5', null),('9','C++程序设计','4','8'),('10','离散数学','4', null),('11','微机原理','5','8'),('12','数据库原理','4','9'),('13','计算机网络','3','9'),('14','软件工程','3','9'),('15','图形学','3','8');
    

    SC表:

    insert into SC values('2001203','8','88'),('2001103','8','62'),('2001104','8','91'),('2001201','8','91'),('2001103','9','70'),('2001104','9','84'),('2001201','9','78'),('2001203','10','76'),('2001104','10','95'),('2001201','10','78'),('2001001','1','92'),('2001001','2','85'),('2001001','3','88'),('2001002','2','90'),('2001002','3','80'),('2001003','2','85'),('2001004','1','58'),('2001004','2','85')
    
    • 结果
      student
      course
      SC
      4. 修改(增加列)
    ALTER TABLE student ADD SJG varchar
    

    写在最后

    看到看到这了,你还不点赞《·》…《·

    展开全文
  • 数据库实验数据更新 实验过程 (1)INSERT 基本语句(插入全部列的数据) (2)INSERT 基本语句(插入部分列的数据) (3)UPDATE 语句(修改部分记录的部分列值) (4)DELETE 语句(删除给定条件点的所有...

    数据库实验:数据更新

    实验过程

    (1)INSERT 基本语句(插入全部列的数据)

    (2)INSERT 基本语句(插入部分列的数据)

    (3)UPDATE 语句(修改部分记录的部分列值)

    (4)DELETE 语句(删除给定条件点的所有记录)


     

    一、实验内容

    1. 实验目的

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

    2. 实验内容及要求

    针对TPC-H 数据库设计单元组插入、批量数据插入、修改数据和删除数据等SQL 语句。理解和掌握INSERT、UPDATE 和DELETE 语法结构的各个组成成分,结合嵌套SQL 子查询,分别设计几种不同形式的插入、修改和删除数据的语句,并调试成功。

    3. 实验重点和难

    实验重点:插入、修改和删除数据的SQL。

    实验难点:与嵌套SQL 子查询相结合的插入、修改和删除数据的SQL 语句;利用一个表的数据来插入、修改和删除另外一个表的数据。

    4、实验过程

    (1)INSERT 基本语句(插入全部列的数据)

    插入一条顾客记录,要求每列都给一个合理的值。

    涉及Customer 表

    INSERT INTO Customer
    
    VALUES(8,'Mark','郑州',1,5686055,1.6, 'North','无'); #每列都对应写入值

     

    (2)INSERT 基本语句(插入部分列的数据)

    插入一条订单记录,给出必要的几个字段值。

    涉及Lineitem 表

    
    INSERT INTO
    
    Orders(Orderkey,Custkey,Totalprice,Orderdate,Comment)
    
    VALUES(5,8,11000,2020-06-09,'无'); #列出的列和写入的值对应

     

    (3)UPDATE 语句(修改部分记录的部分列值)

    “金仓集团”供应的所有零件的供应成本价下降10%。

    涉及PartSupp 表中的supplycost,suppkey ,Suppier 表中的name, suppkey

    UPDATE PartSupp
    
    SET Retailprice = Retailprice*(1-0.1)
    
    WHERE Suppkey = (  #找到需要修改的记录
    
            SELECT Suppkey
    
            FROM Supplier 
    
        WHERE Name = '金仓集团';

     

    (4)DELETE 语句(删除给定条件点的所有记录)

    删除顾客张三的所有订单记录。

    涉及Lineitem,Orders,Customer 表

    DELETE FROM Lineitem L #先删除张三的订单明细记录
    
    WHERE Orderkey IN(
    
            SELECT Orderkey
    
            FROM Orders O,Customer C
    
            WHERE O.Custkey = C.Custkey AND
    
            C.Name = '张三');

     

    DELETE FROM Orders #再删除张三的订单记录
    
    WHERE Custkey = (
    
            SELECT Orderkey
    
            FROM Orders O,Customer C
    
            WHERE O.Custkey = C.Custkey AND
    
            C.Name = '张三');

     

    实验效果及分析

    这次实验主要内容是数据更新,包括了数据插入,数据更新及数据删除。数据插入需要注意是否全部给值,如果只给必要的几个字段添加值需要指出添加值的字段,和值一一对应。数据更新要先找到需要更新的数据(配合查询)再进行更新操作。删除数据记录使用关键字DELETE(删除数据库或表用关键字DROP),WHERE后面写删除数据需要满足的条件。注意,如果存在主外键关系,应该先删除子表中的数据再删除主表中的数据。

     

     

    展开全文
  • 数据库实验 数据控制-安全性部分+ 数据控制-完整性部分+数据备份和恢复 一、实验环境 本实验的实验环境为SQL Sever 2008 R2。 二、实验内容与完成情况 一、实验目的 熟悉通过SQL对数据库进行数据控制,包括安全性、...

    数据库实验 数据控制-安全性部分+ 数据控制-完整性部分+数据备份和恢复

    一、实验环境
    本实验的实验环境为SQL Sever 2008 R2。

    二、实验内容与完成情况

    一、实验目的

    熟悉通过SQL对数据库进行数据控制,包括安全性、完整性和数据库恢复。

    二、实验内容

    实验一 数据控制-安全性部分

    1.实验内容

    SQL中使用GRANT和REVOKE语句向用户授予或收回对数据的操作权限。GRANT语句向用户授予权限,REVOKE语句收回已经授予用户的权限。

    2.GRANT

    GRANT语句的一般格式为
    GRANT<权限>[,<权限>]…
    ON<对象类型><对象名>[,<对象类型><对象名>]…
    TO <用户>[,<用户>]…
    [WITH GRANT OPTION];

    其语义为:将对指定操作对象的指定操作权限授予指定的用户。发出该GRANT语句可以时数据库管理员,也可以该数据库对象创建者(即属主owner),还可以时已经拥有该权限的用户。接受权限的用户可以是一个或多个具体用户,也可以是PUBLIC,即全体用户。

    如果指定了WITH GRANT OPTION 子句,则获得某种权限的用户还可以把这种权限再授予其他用户。如果没有指定EITH GRANT OPTION子句,则获得某种权限的用户只能使用该权限,不能传播该权限。

    SQL标准允许拥有WITH GRANT OPTION的用户把相应权限或其子集授予其他用户,但不允许循环授权,即被授权者不能把权限再授回给授权者或其祖先。

    我首先假定系统有U1、U2、U3 、U4、U5、U6六个登录用户,操作如图1。
    Exec sp_addlogin ‘U1’,‘123456’
    Exec sp_addlogin ‘U2’,‘123456’
    Exec sp_addlogin ‘U3’,‘123456’
    Exec sp_addlogin ‘U4’,‘123456’
    Exec sp_addlogin ‘U5’,‘123456’
    Exec sp_addlogin ‘U6’,‘123456’

    在这里插入图片描述
    然后使其成为当前数据库的合法用户,操作如图2。
    Exec sp_grantdbaccess ‘U1’
    Exec sp_grantdbaccess ‘U2’
    Exec sp_grantdbaccess ‘U3’
    Exec sp_grantdbaccess ‘U4’
    Exec sp_grantdbaccess ‘U5’
    Exec sp_grantdbaccess ‘U6’

    在这里插入图片描述
    (1)把查询Albums表的权限授给用户U1。

    GRANT SELECT
    ON Albums
    TO U1

    在这里插入图片描述
    (2)把对Albums表的查询和插入权限授给U5用户,并允许将此权限再授予其他用户。
    GRANT SELECT,INSERT
    ON Albums
    TO U5
    WITH GRANT OPTION

    在这里插入图片描述
    下面登录U1。
    在图5中可以看出U1没有获得访问select_course数据库的权限。

    在这里插入图片描述

    在图6中可以看出U1获得查询Albums表的权限。

    在这里插入图片描述
    在图7中可以看出U1没有获得更新Albums表的权限。

    在这里插入图片描述

    下面登录U5。
    在图8中可以看出U5获得查询Albums表的权限。

    在这里插入图片描述
    在图9、10中可以看出U5获得插入Albums表的权限。

    在这里插入图片描述
    在这里插入图片描述
    下面验证WITH GRANT OPTION。
    U5将查询Albums表功能授予U6。

    GRANT SELECT
    ON Albums
    TO U6

    在这里插入图片描述
    登录U6,执行查询功能。

    在这里插入图片描述

    U6并没有获得其他权限,比如UPDATE。

    在这里插入图片描述

    下面重新登录管理员用户,执行REVOKE。

    授予用户的权限可以由数据库管理员或其他授权者用REVOKE语句收回,REVOKE语句的一般格式为

    REVOKE <权限>[,<权限>]…
    ON <对象类型><对象名>[,<对象类型><对象名>]…
    FROM <用户>[,<用户>]…[CASCADE|RESTRICT];

    (3)把用户U1查询Albums的权限收回。

    REVOKE SELECT
    ON Albums
    FROM U1

    在这里插入图片描述
    (4)把用户U5查询、插入Albums的权限收回,级联收回U6的权限。
    REVOLE SELECT,INSERT
    ON Albums
    FROM U5 CASCADE;

    在这里插入图片描述
    从图16、17、18中可以看出,U5、U6、U7均已无法访问Albums表。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    实验二 数据控制-完整性部分

    1.实体完整性

    关系模型的试题完整性在CREATE TABLE中用PRIMARY KEY定义。对单属性构成的码有两种说明方法,一种是定义为列级约束条件,另一种是定义为表级约束条件。对多个属性构成的码只有一种说明方法,即定义为表级约束条件。

    例:将Course表中的Cno属性定义为码。

    CREATE TABLE Course
    (Cno int PRIMARY KEY,
    Cname CHAR(20) NOT NULL,
    Ccredit int
    )

    在这里插入图片描述
    下面呈现当操作违反了完整性约束条件时,系统是如何处理的。

    在这里插入图片描述
    2.参照完整性
    关系模型的参照完整性在CREATE TABLE中用FOREIGN KEY短语定义哪些列为外码,用REFERENCES短语指明这些外码参照哪些表的主码。

    例:定义SC中的参照完整性。

    CREATE TABLE SC
    (Sno nCHAR(10)NOT NULL,
    Cno int NOT NULL,
    Grade SMALLINT,
    PRIMARY KEY(Sno,Cno),
    FOREIGN KEY(Sno)REFERENCES Student(Sno),
    FOREIGN KEY(Cno) REFERENCES Course(Cno)
    )
    在这里插入图片描述

    下面呈现当操作违反了参照完整性时,系统是如何处理的。
    例如,删除Student表中Sno值为“201215121”的元组,则从要SC表中级联删除SC.Sno=201215121’的所有元组。

    在这里插入图片描述
    3.用户定义完整性

    用户定义的完整性就是针对某一具体应用的数据必须满足的语义要求。目前的关系数据库管理系统都提供了定义和检验这类完整性的机制,使用了和实体完整性、参照完整性相同的技术和方法来处理它们,而不必由应用程序承担这一功能。

    例:不允许取空值

    定义Course表时,Cname不允许取空值。

    CREATE TABLE Course
    (Cno int PRIMARY KEY,
    Cname CHAR(20) NOT NULL,
    Ccredit int
    )
    在这里插入图片描述
    下面呈现当操作违反了用户定义完整性时,系统是如何处理的。

    在这里插入图片描述
    4.CHECK短语
    例:Teacher表的Tsex只允许取“男”或“女”。
    CREATE TABLE Teacher
    (Tno CHAR(6) PRIMARY KEY,
    Ssex CHAR(6) CHECK(Ssex in (‘男’,‘女’))
    )

    在这里插入图片描述
    下面呈现当操作违反了CHECK短语用户定义完整性时,系统是如何处理的。

    在这里插入图片描述
    5.CONSTRANT子句

    SQL还在CREATE TABLE语句中提供了完整性约束命名子句CONSTRAINT,用来对完整性约束条件命名,从而可以灵活地增加、删除一个完整性约束条件。

    例:建立学生登记表SSStudent,要求学号在1~999之间,姓名不能取空值,年龄小于20,性别只能是“男”或“女”。

    CREATE TABLE SSStudent
    (Sno NUMERIC(6)
    CONSTRAINT CI CHECK(SnO BETWEEN 1 AND 999),Sname CHAR(20)
    CONSTRAINT C2 NOT NULL,Sage NUMERIC(3)
    CONSTRAINT C3 CHECK(Sage <20),Ssex CHAR(2)
    CONSTRAINT C4 CHECK(Ssex IN(‘男’,‘女’)),CONSTRAINT StudentKey PRIMARY KEY(Sno)
    )

    在这里插入图片描述
    下面呈现当操作违反了CONSTRAINT子句时,系统是如何处理的。

    在这里插入图片描述
    实验三 数据备份和恢复

    尽管数据库系统中采取了各种保护措施来防止数据库的安全性和完整性被破坏,保证并发事务的正确执行,但是计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏仍是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失。因此数据库管理系统必须具有把数据库从错误状态恢复到某一已知的正确状态(亦称为一致状态或完整状态)的功能,这就是数据库的恢复。恢复子系统是数据库管理系统的一个重要组成部分,而且还相当庞大,常常占整个系统代码的10%以上。数据库系统所采用的恢复技术是否行之有效,不仅对系统的可靠程度起着决定性作用,而且对系统的运行效率也有很大影响,是衡量系统性能优劣的重要指标。

    1.创建一个备份设备
    USE [master]
    GO
    EXEC master.dbo.sp_addumpdevice @devtype = N’disk’, @logicalname = N’beifen’, @physicalname = N’D:\beifen.bak’
    GO

    在这里插入图片描述
    2.完整备份实验数据库到备份设备

    –备份数据库
    USE master
    GO
    BACKUP DATABASE select_course TO beifen

    在这里插入图片描述
    3.向实验数据库中某个表插入若干条记录
    INSERT
    INTO Sstudent
    VALUES (‘Bob’,‘Database’,‘1’);
    INSERT
    INTO Sstudent
    VALUES (‘Bob’,‘java’,‘2’);
    INSERT
    INTO Sstudent
    VALUES (‘Bob’,‘C++’,‘3’);

    在这里插入图片描述
    4.备份数据库事务日志到备份设备,并查看日志格式。

    (1) 备份数据库事务日志到备份设备

    –备份事务日志
    USE master
    GO
    BACKUP LOG select_course TO beifen;

    在这里插入图片描述
    (2)查看日志格式

    在这里插入图片描述
    5.利用第2步所得的完整备份,恢复到插入记录前的状态。
    use master
    go
    —声明变量
    declare @dbName nvarchar(max)=‘select_course’;
    declare @dbFullName nvarchar(max)=‘D:\beifen.bak’;
    –1.1修改为单用模式
    exec(N’ALTER DATABASE ‘+@dbName+’ SET SINGLE_USER WITH ROLLBACK IMMEDIATE’);
    –1.2结束链接进程
    DECLARE @kid varchar(max)
    SET @kid=’’
    SELECT @kid=@kid+'KILL ‘+CAST(spid as Varchar(10)) FROM master…sysprocesses
    WHERE dbid=DB_ID(@dbName) ;
    EXEC(@kid) ;
    –2.执行还原语句
    restore database @dbName from disk=@dbFullName
    with replace --覆盖现有的数据库
    –3.重置数据库为多用户模式
    exec(N’ALTER DATABASE ‘+@dbName+’ SET MULTI_USER WITH ROLLBACK IMMEDIATE’);

    在这里插入图片描述
    可以看到表中内容已经没有了(刚开始时的表就是空表)。

    在这里插入图片描述
    6.利用第4步所得的事务日志,恢复到插入记录后的状态

    ALTER DATABASE select_course SET OFFLINE WITH ROLLBACK IMMEDIATE
    RESTORE DATABASE select_course FROM DISK=’D:\beifen.bak’ WITH REPLACE,NORECOVERT
    RESTORE LOG select_course FROM DISK=’D:\beifen.bak’ WITH RECOVERY, STOPAT=N’12/1/2020 20:36:00 PM’
    ALTER database select_course set online

    在这里插入图片描述
    三、出现的问题及解决方法
    1.在写授权语句时,系统报错,在“TO”附近有语法错误,应为DOUBLECOLON,或ID.。这时把TABLE删除就可以了。
    2.在备份数据库时,刚开始备份了一个名字全是中文的数据库,在写代码时无法写出“-”该符号,只能换成备份英文名字的数据库。

    展开全文
  • 在保证需操作数据库中已经存在XSKC模式下的数据表student、course、sc 1、修改数据表信息 1)修改student表,将cs系姓名为“李咏”的学生姓名为“李勇” UPDATE XSKC.student SET sname = ‘李勇’ WHERE ...

    在保证需操作的数据库中已经存在XSKC模式下的数据表student、course、sc

    1、修改数据表信息

    1)修改student表,将cs系姓名为“李咏”的学生姓名为“李勇”

    UPDATE XSKC.student
    SET sname = ‘李勇’
    WHERE sdept=‘CS’ AND sname=‘李咏’

    2)将学号为“200515010”的学生信息重新设置为“王丹丹、女、20、MA”
     UPDATE XSKC.student
    

    SET sname=‘王丹丹’,ssex=‘女’,sage=20,sdept=‘MA’
    WHERE sno=‘200515010’

    3)修改course表,将“数据处理”的学分改为3学分

    UPDATE XSKC.COURSE
    SET ccredit=3
    WHERE cname=‘数据处理’

    4)修改CS表,将选修课程“1”的同学成绩加5分

    UPDATE XSKC.sc
    SET grade=grade+5
    WHERE cno=1

    5)删除数据表student中无专业的学生记录

    DELETE FROM XSKC.student
    WHERE sdept IS NULL

    6)删除数据表course中学分低于1学分的课程信息

    DELETE
    FROM XSKC.course
    WHERE ccredit<1

    2.请使用T-SQL 语句实现以下操作

    1)列出姓“王”且全名为3个汉字的学生的基本信息

    USE student
    SELECT *
    FROM XSKC.student
    WHERE sname like ‘王__’

    2)查询在1986年以后出生的学生的学号和姓名

    USE student
    SELECT sno,sname
    FROM XSKC.student
    WHERE sage<2019-1986

    3)查询没有分配院系的学生的姓名和学号

    USE student
    SELECT sno,sname
    FROM XSKC.student
    WHERE sdept IS NULL

    4)按照课程号、成绩降序显示课程成绩在70-80之间的学生的学号、课程号及成绩

    USE student
    SELECT *
    FROM XSKC.sc
    WHERE grade BETWEEN 70 AND 80
    ORDER BY cno DESC,grade DESC

    5)按照院系降序显示所有学生的 “院系,学号、姓名、性别、年龄”等信息,其中院系按照以下规定显示:院系为CS显示为计算机系,院系为IS显示为信息系,院系为MA显示为数学系,院系为EN显示为外语系,院系为CM显示为中医系,院系为WM显示为西医系,其他显示为院系不明

    USE student
    SELECT 院系=
    case
    when sdept=‘CS’ then ‘计算机系’
    when sdept=‘IS’ then ‘信息系’
    when sdept=‘MA’ then ‘数学系’
    when sdept=‘EN’ then ‘外语系’
    when sdept=‘CM’ then ‘中医系’
    when sdept=‘WM’ then ‘西医系’
    else ‘院系不明’
    end,sno as ‘学号’,sname as ‘姓名’,ssex as ‘性别’,sage as ‘年龄’
    FROM XSKC.student
    ORDER BY 院系 DESC

    6)查询同时选修“1”号课程和“2”号课程的所有学生的学号

    USE student
    SELECT sno
    FROM XSKC.sc
    WHERE cno=1 AND sno in(SELECT sno FROM XSKC.sc WHERE Cno=2)

    7)查询所有院系(要求不能重复,不包括空值),并在结果集中增加一列字段“院系规模”,其中若该院系人数>=5则该字段值为“规模很大”,若该院系人数大于等于4小于5则该字段值为“规模一般”, 若该院系人数大于等于2小于4则该字段值为“规模稍小”,否则显示“规模很小”

    USE student
    SELECT distinct sdept,院系规模=
    case
    when count()>5 then ‘规模较大’
    when count(
    )between 4 and 5 then ‘规模一般’
    when count(*)between 2 and 4 then ‘规模较小’
    end
    FROM XSKC.student
    WHERE sdept IS NOT NULL
    GROUP BY sdept

    8)查询学生信息表中的学生总人数及平均年龄,在结果集中列标题分别指定为“学生总人数,平均年龄”

    USE student
    SELECT 学生总人数=COUNT(distinct sno),平均年龄=AVG(sage)
    FROM XSKC.student

    9)查询选修的课程数大于3的各个学生的选修课程数

    USE student
    SELECT DISTINCT 学号=sno,选课数=COUNT(cno)
    FROM XSKC.sc
    GROUP BY sno
    HAVING COUNT(cno)>3

    10)查询IS系学生的学号、姓名、性别、年龄,并统计出IS系的学生个数

    USE student
    SELECT sno 学号,sname 姓名,ssex 性别,sage 年龄
    FROM XSKC.student
    SELECT distinct IS系的学生个数=COUNT(*)
    FROM XSKC.student
    WHERE sdept=‘IS’

    11)查询每个院系的学生前两条记录,并组成新表ceshi
       USE student
    

    SELECT a.*
    INTO ceshi
    FROM XSKC.student a
    WHERE sno IN
    (SELECT top 2 sno
    FROM XSKC.student
    WHERE sdept=a.sdept
    order by sno)

    12)查询平均成绩大于“赵菁菁”平均成绩的各个学生的学号、平均成绩

    USE student
    SELECT sno 学号,AVG(grade) 平均成绩
    FROM XSKC.sc
    GROUP BY sno
    HAVING AVG(grade)>(SELECT AVG(grade)from XSKC.sc,XSKC.student where sname=‘赵菁菁’)

    实验步骤

    命令方式:在【SQL Server Management Studio】窗口左上方选择【新建查询】按钮,启动SQL编辑器窗口,在光标处输入T-SQL语句,单击【执行】按钮。例如第一题可输入:
    select * from student where sname not like ‘刘%’

    展开全文
  • 数据库实验二 SQL数据定义和操作

    千次阅读 2019-12-06 17:15:55
    SQL数据定义和操作欢迎阅读本教程一、数据定义二、 欢迎阅读本教程 掌握关系数据库语言 SQL 的使用。 使所有的 SQL 作业都能上机通过。 实现内容如下: 数据定义:表的建立/删除/修改; 索引的建立/删除;视图的...
  • 实验数据更新操作 一. 实验目的 掌握INSERT/UPDATE/DELETE语句的使用。 体会数据更新操作对完整性约束的影响。 二. 实验准备 1. 准备基本表中的数据。 2. 了解INSERT、UPDATE及DELETE语句。 三. 实验要求 ...
  • 熟悉数据库数据更新操作,能够使用SQL语句对数据库进行数据的插入、修改、删除操作。 二、实验内容和要求 1.插入 2.修改 3.删除 要求:理解和掌握INSERT、UPDATE和DELETE语法结构的各个主成成分,结合嵌套SQL子...
  • MySQL数据库数据的查询操作实验

    千次阅读 多人点赞 2019-10-23 00:10:28
    验证性实验: create database bumeninfo; use bumeninfo; create table bumen( d_id int(4)not null unique primary key, d_name varchar(20)not null unique, functions varchar(20), address varchar(20) ); ...
  • 数据库大批量数据操作实验报告

    千次阅读 2011-10-14 21:04:56
    今天由于项目需要进行了数据库大批量数据操作实验: 由服务程序生成10万条记录,竟将其插入到SQLSERVER数据库中 第一次:刚开始用三层架构的Model 模式,即创建实体对象并给对象赋值,并且每次都关闭conn,程序...
  • 数据库实验2教程
  • 参考地址为:通过Java代码实现对数据库数据进行操作:增删改查(JDBC)
  • SQL语言-数据更新操作 1.在教学管理数据库jxgl中,使用MySQL Workbench在表中导入表5-1和表5-2的数据 将所给数据导入student表: insert into student values ('2005010','赵春江',18,'男','Cs'), ('2005011','...
  • 数据库实验报告2 数据更新实验

    千次阅读 2020-04-29 14:28:37
    (1)理解和掌握数据库更新操作,能够使用SQL语句对数据库进行数据的插入、修改、删除操作。 (2)掌握SQL语句常见语法错误的调试方法。 二、 实验内容: 按照下列要求操作,并截取相应的结果图 1、教材79-80页三...
  • 计算机科学系实验报告(首页) ...数据库数据的更新 教导教师 索剑 姓名 张钦颖 学号 1414080901218 组号   日期 2016年4月12日
  • 数据库实验数据定义与数据操纵

    千次阅读 2020-03-05 19:18:01
    (3)使用PL/SQL developer操作数据库 (4)熟练掌握SQL 建立关系,及增删改数据 二、实验环境 PLSQL Developer 12 Oracle Database 11 home 三、实验步骤、出现的问题及解决方案 实验步骤: 1、以SYSTEM登录数据库,...
  • 任务七 数据库的高级操作 文章目录任务七 数据库的高级操作【实训目的与要求】【实训原理】【实训步骤】一、数据库的备份与还原1.备份数据库2.还原数据库二、用户管理1.使用SELECT语句查看mysql.user表内容2....
  • 数据库实验二:数据库操作

    千次阅读 2019-12-13 19:57:39
    实验二:数据库操作 一、实验目的 1.熟悉数据表结构及使用特点; 2.熟悉使用Management Stuio界面方式管理数据数据; 3.熟悉使用T-SQL语句管理数据数据; 4.掌握SELECT语句的基本语法和查询条件表示方法; 5....
  • 数据库实验数据查询

    千次阅读 2018-09-18 20:54:44
    3. 熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。 4. 掌握子查询的表示。 5. 熟练掌握数据查询中的分组、统计、计算和组合的操作方法。   二、实验环境及准备:   完成数据库的创建,在...
  • 计算机科学系实验报告(首页) 课程名称 数据库系统概论 ...实验名称 ...数据库数据视图的使用 教导教师 索剑 姓名 张钦颖 学号 1414080901218 组号   日期 2016年4月5日
  • 这次分享给大家,点击获取方式:计算机必读书籍(含下载方式)包含据结构与算法、计算机网络、数据库、计算机组成原理、操作系统、Java、C/C++ 优质的计算机专业书籍 计算机网络 操作系统 计算机组成原理 数据结构...
  • 数据库实验数据更新

    万次阅读 2018-09-19 22:05:11
    一、实验目的:   熟悉使用UPDATE/INSERT/DELETE语句进行表操作; 能将这些更新操作应用于实际操作中去;   二、实验环境及准备:   了解更新语句的基本语法和用法; 建立相关数据库,并在数据库中建立表...
  • 实验二 1.实验题目:数据定义 2.实验目和要求: 掌握数据表的创建,修改...按实验内容要求完成各项操作 根据题目要求给出解决方案 提交实验报告 4.实验内容: (1)、数据表的建立 建立s,c,sc三张数据表,...
  • mongoose操作mongodb数据库添加数据

    千次阅读 2019-05-07 12:50:22
    连接数据库成功之后,接下来就是利用mongoose操作mongodb 1.首先定义一个模型对象 Schema,使用 mongoose.Schema 来创建一个模型对象,例如: 这个模型对象实际上可以理解为一个规则,就是约束模型的规则,上图...
  • 数据操作 /*插入数据*/ use testbase2 go insert into Course values('C1','程序设计','1') go /*修改数据*/ use testbase2 go update Teacher set PROF ='副教授' where TN = '王平' go /*删除数...
  • 数据库实验数据控制和实现

    千次阅读 多人点赞 2018-05-09 21:23:45
    又到一周的周三了,还有两次课一次数据库实验了,后面还有一个数据库的课程设计,听说有点难。。不怕就当是自己第一份github项目吧。一、实验目的1.掌握在SQL SERVER2012中利用界面工具和存储过程进行登录账号和...
  • 管理数据表 创建表的目在于利用表进行...在SQL Server 2008中,对于数据的管理包括插入、修改和删除,通过Management Studio来操作,也可以利用SQL语句来实现。 1、界面方式插入数据表 1.利用对象资源管理器插入...
  • 实验1 数据库操作

    2019-12-06 15:34:39
    实验1 数据库操作 一、实验目的 1.掌握管理工具、T-SQL创建数据库的方法。 2.掌握管理工具、T-SQL修改和查看数据库的方法。 3.掌握管理工具、T-SQL删除数据库的方法。 4.掌握数据库的附加与分离 二、实验要求 1....
  • 开发本数据库用于数据库课程的学习,主要是熟练使用数据查询的相关操作以及与修改基本表的相关操作
  • 实验目的 1 掌握 MySQL数据库的安装方法 2 掌握 MySQL数据库的使用 熟悉数据库管理工具的使用 实验要求 利用 MySQL 命令创建数据库和相应的数据库表并能向数据库表中插入数据记录和相应的数据库操作 利用 Navicat ...
  • 数据库学习之实验一+Oracle数据库的基本操作     实验一 数据定义和单表查询  一、实验目的: 1. 熟悉数据库的交互式SQL工具 2. 通过本实验能够熟练应用sql语言进行基本表和索引的定义,能够对表的结构...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 163,399
精华内容 65,359
关键字:

数据库实验数据操作