精华内容
下载资源
问答
  • 数据更新实验报告

    千次阅读 2018-06-12 21:36:22
    实验三 数据更新实验目的熟悉使用UPDATE/INSERT/DELETE语句进行表操作;能将这些更新操作应用于实际操作中去;实验准备了解更新语句的基本语法和用法;建立相关数据库,并在数据库中建立表,表中有一定量的记录。...

    实验三  数据更新

    实验目的

    熟悉使用UPDATE/INSERT/DELETE语句进行表操作;

    能将这些更新操作应用于实际操作中去;

    实验准备

    了解更新语句的基本语法和用法;

    建立相关数据库,并在数据库中建立表,表中有一定量的记录。

    实验内容

    Part 1 使用课程数据库

    1.对于student表,将所有所在系部信息为’CS’的改为’计算机科学系’.

    update Student

    set Sdept='计算机科学系'

    sdept='CS';

     

     

     

    2. 对于course表,将数据结构课程的学分改为3。

     

    3. 对于student表,插入一条新记录,它的具体信息为,学号:201216011、姓名:张三、性别:男、年龄:21,所在系部:数学系。

     

    4. 对于course表,插入两条记录,记录的值自己给定。

        insert

        Course

     values('9','c语言','5','4' );

    insert

       Course

       values('8','数据结构','6','3' );

     

     

    5. 对于SC表,将课程编号为2号的最低分改为在原分数*1.1

     

     

     

    6. 对于SC表,将课程名为数据库的最低分改为在原分数*1.1

     

     

     

     

    7. SC_T表中,插入若干选课记录,学号为student表中出现的学号,课程编号为1

    create table SC_T

     (sno char(10),

     cno char(10),

     grade char(10)

     

     PRIMARY KEY (Sno,Cno))

     

     

    insert into SC_T values('201215121','1',93); 

    insert into SC_T values('201215122','1',90); 

    insert into SC_T values('201215123','1',65); 

    insert into SC_T values('201215128','1',50); 

    insert into SC_T values('201215125','1',90); 

     insert into  SC_T values('201215126','1',89); 

     

     

    8. SC_T表中,插入若干选课记录,学号为student表中出现的学号,课程编号为操作系统课程的编号

    create table SC_T

     (sno char(10),

     cno char(10),

     grade char(10)

     

     PRIMARY KEY (Sno,Cno))

     

     

    insert into SC_T values('201215121','4',93); 

    insert into SC_T values('201215122','4',90); 

    insert into SC_T values('201215123','4',65); 

    insert into SC_T values('201215128','4',50); 

    insert into SC_T values('201215125','4',90); 

     insert into  SC_T values('201215126','4',89); 

     

     

     

    10.在SC_T表中,插入若干选课记录,学号为student表中出现的学号,课程编号为在课程表中出现的所有课程号。

     CREATE TABLE SC_T

    (Sno CHAR(9),

     

    Cno CHAR(4), 

    Grade SMALLINT, 

    PRIMARY KEY (Sno,Cno))

    insert into SC_T values('201215121','1',92); 

    insert into SC_T values('201215121','2',85); 

    insert into SC_T values('201215121','3',88); 

    insert into SC_T values('201215121','4',98); 

    insert into SC_T values('201215121','5',89); 

    insert into SC_T values('201215121','6',95); 

    insert into SC_T values('201215121','7',93); 

    insert into SC_T values('201215122','2',90); 

    insert into SC_T values('201215122','3',80); 

    insert into SC_T values('201215122','4',85); 

    insert into SC_T values('201215122','6',92); 

    insert into SC_T values('201215123','1',90); 

    insert into SC_T values('201215123','2',84); 

    insert into SC_T values('201215123','3',91); 

    insert into SC_T values('201215123','4',90); 

    insert into SC_T values('201215123','5',80); 

    insert into SC_T values('201215123','6',78); 

    insert into SC_T values('201215123','7',65); 

    insert into SC_T values('201215128','1',78); 

    insert into SC_T values('201215128','2',82); 

    insert into SC_T values('201215128','3',77); 

    insert into SC_T values('201215128','4',79); 

    insert into SC_T values('201215128','5',92); 

    insert into SC_T values('201215128','6',98); 

    insert into SC_T values('201215128','7',50); 

    insert into SC_T values('201215125','1',67); 

    insert into SC_T values('201215125','2',71); 

    insert into SC_T values('201215125','3',90); 

    insert into SC_T values('201215126','4',81); 

    insert into SC_T values('201215126','5',90); 

    insert into SC_T values('201215126','6',56); 

    insert into SC_T values('201215126','7',89); 

    insert into SC_T values('201215127','1',81); 

    insert into SC_T values('201215127','2',72); 

    insert into SC_T values('201215127','3',90); 

    insert into SC_T values('201215127','4',64); 

    insert into SC_T values('201215127','5',79); 

    insert into SC_T values('201215127','6',50); 

    insert into SC_T values('201215127','7',96)

     

     

     

     

     

     

     


    展开全文
  • MYSQL学习与实验(二)—— 数据更新实验 2.1数据更新实验 2.1.1创建一个测试表test用于测试: create table if not exists test ( id int(8) primary key auto_increment,name varchar(20) not null,price float,...

    MYSQL学习与数据库综合实验(二)—— 数据更新实验

    2.1数据更新实验

    2.1.1创建一个测试表test用于测试:

    create table if not exists test ( id int(8) primary key auto_increment,name varchar(20) not null,price float,gender tinyint(1) default 0,age int(3),birth date );
    

    在这里插入图片描述

    2.1.2向test表中插入数据

    2.1.2.1插入单条数据
    INSERT INTO <表名> [ <列名1> [ , … <列名n>] ]
    VALUES (值1) [… , (值n) ];
    

    语法说明如下。

    <表名>:指定被操作的表名。

    <列名>:指定需要插入数据的列名。若向表中的所有列插入数据,则全部的列名均可以省略,直接采用 INSERT<表名>VALUES(…) 即可。

    VALUES 或 VALUE 子句:该子句包含要插入的数据清单。数据清单中数据的顺序要和列的顺序相对应。

    在这里插入图片描述

    2.1.3从已有数据中插入:

    使用 INSERT INTO 表名  SELECT [列名1,列名2,...]  FROM  表名  语句复制表数据
    

    INSERT INTO…SELECT…FROM 语句用于快速地从一个或多个表中取出数据,并将这些数据作为行数据插入另一个表中。SELECT 子句返回的是一个查询到的结果集,INSERT 语句将这个结果集插入指定表中,结果集中的每行数据的字段数、字段的数据类型都必须与被操作的表完全一致。
    在这里插入图片描述
    在这里插入图片描述

    2.1.4更新test的内容

    UPDATE <表名> SET 字段 1=值 1 [,字段 2=值 2… ] [WHERE 子句 ]
    [ORDER BY 子句] [LIMIT 子句]
    

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    2.1.5删除数据

    DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子句]
    

    语法说明如下:

    <表名>:指定要删除数据的表名。

    ORDER BY 子句:可选项。表示删除时,表中各行将按照子句中指定的顺序进行删除。

    WHERE 子句:可选项。表示为删除操作限定删除条件,若省略该子句,则代表删除该表中的所有行。

    LIMIT 子句:可选项。用于告知服务器在控制命令被返回到客户端前被删除行的最大值。


    注意:在不使用 WHERE 条件的时候,将删除所有数据。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2.2详细的实验资料以及指导PPT请访问笔者GitHub地址:https://github.com/LJF2402901363/database_experiment.git

    2.3本博客已经同步到个人博客,如有需要请移步:http://moyisuiying.com/index.php/experiment/mysqlexperiment/365.html

    展开全文
  • 实验三 数据更新实验

    千次阅读 2011-11-12 22:47:18
    /*********************实验三 数据更新实验*************************/ -- 1. 将数据分别插入表S、C、SC; -- 2. 将表S、C、SC中的数据分别以.SQL文件和.txt文件的形式保存在磁盘上。 -- 3. 在表S、C、SC上练习...
    /*********************实验三 数据更新实验*************************/
    -- 1.  将数据分别插入表S、C、SC;
    -- 2.  将表S、C、SC中的数据分别以.SQL文件和.txt文件的形式保存在磁盘上。
    -- 3.  在表S、C、SC上练习数据的插入、修改、删除操作。(比较在表上定义/未定义主码(Primary Key)或外码(Foreign Key)时的情况)
    -- 4.  将表S、C、SC中的数据全部删除,再利用磁盘上备份的数据来恢复数据。
    -- 5.  如果要在表SC中插入某个学生的选课信息(如:学号为“200215121”,课程号为“6”,成绩待定),应如何进行?
    insert into SC values('200215121','6',null) ;
    -- 6.  求各系学生的平均成绩,并把结果存入数据库;
    drop table stu_avg ;
    create table stu_avg (
    deptname varchar(50) primary key,
    score float
    ); -- 注意在MSSQL中并没有double类型
    /* -- 法一
    insert into stu_avg 
    	select sdept 系名,avg(grade) 平均成绩 from Student,SC
    	where student.Sno=SC.Sno
    	group by Sdept;
    */
    -- 法二
    insert into stu_avg 
    	select sdept 系名,avg(grade) 平均成绩 
        from student inner join SC
        using (Sno)
    	group by Sdept;
    select deptname 系名,score 平均分数 from stu_avg;
    -- 7.  将“CS”系全体学生的成绩置零;
    update SC set grade=0 
    where Sno in (
        select distinct Sno from Student,Course 
        where Sdept='CS' 
        );
    select  distinct SC.* from Student,SC
    where Sdept='CS';
    
    -- 8.  删除“CS”系全体学生的选课记录;
    
    DELETE from SC
    where Sno in(
    	select distinct Sno from Student
    	where Sdept='CS'
    	);
    select *from SC
    where Sno in(
    	select distinct Sno from Student
    	where Sdept='CS'
    );
    
    -- 9.  删除学号为“200215121”的相关信息;**************
    alter table SC drop   foreign key fk2 ;
    -- 此句在MSSQL中要将foreign key改为constraint 
    alter table SC add constraint fk2 foreign key(Sno) references Student(Sno) on delete cascade ;
    delete from Student where Sno='200215121';
    select *from SC ;
    select *from Student ;
    -- 10.  将学号为“200215121”的学生的学号修改为“S001”;***********
    -- http://www.cppblog.com/wolf/articles/69089.html 外键的使用
    alter table SC drop  foreign key fk2 ;
    alter table SC add constraint fk2 foreign key(Sno) references Student(Sno) on update cascade;
    update  Student set Sno='S001' where Sno='200215121';
    select *from student;
    select *from SC ;
    -- 11.  把平均成绩大于80分的男同学的学号和平均成绩存入另一个表S——GRADE(SNO,AVG——GRADE);
    drop table S_Grade;
    create table S_Grade(
    Sno char(10),
    avg_grade float);
    insert into S_Grade
        select SC.Sno,avg(Grade)
        from SC,Student
        where Ssex='男' and Student.Sno=SC.Sno
        group by SC.Sno
        having avg(Grade) >80;
    select Sno 学号,avg_grade 平均成绩 from S_Grade;
    -- 12.  把选修了课程名为“数据结构”的学生的成绩提高10%;
    select *from SC;
    -- 这句仅适合于MYSQL
    update SC,Course set grade=1.1*grade
    where SC.Cno=Course.Cno and Course.Cname='数据结构';
    /* -- 这句仅适合于MSSQL
    update SC set grade=grade*1.1
    where   Sno in (
        select Sno from SC,Course
        where SC.Cno=Course.Cno and Course.Cname='数据结构' );
    */
    select *from SC;
    
    -- 13.  把选修了“2”号课程,且成绩低于该门课程的平均成绩的学生的成绩提高5%;
    
    /*
    update SC set grade=grade*1.05
    where Cno='2' and Sno in
        (select distinct Sno 
         from SC
         where Cno='2' and grade < (
            select avg(grade) from SC
            where Cno='2' ) );
    
    update SC set grade=grade*1.05
    where Cno='2' and grade < (
            select avg(grade) from SC
            where Cno='2' ) ;
    */
    /* ===========You can't specify target table 'SC' for update in FROM clause.===========
    http://blog.163.com/prevBlogPerma.do?host=xiaoqiu_1120&srl=121632322007112411424982&mode=prev
    http://www.cnblogs.com/chy1000/archive/2010/03/02/1676282.html
    http://zhidao.baidu.com/question/68619324
    http://topic.csdn.net/u/20080521/15/542113f1-de7b-4ebf-9e90-3564fdbc25c0.html *********
    http://stackoverflow.com/questions/45494/sql-delete-cant-specify-target-table-for-update-in-from-clause **********
    */
    select *from SC;
    update SC,(select avg(grade) a from SC where Cno='2') b
    set grade=grade*1.05
    where Cno='2' and grade<b.a;
    select *from SC;
    
    -- 14.  把选修了“2”号课程,且成绩低于该门课程的平均成绩的学生成绩删除掉;
    
    /* -- 在mssql中可以用下面这句执行
    delete from SC
    where Cno='2' and grade<
        (   select avg(grade) from SC where Cno='2' );
    */
    select *from SC where Cno='2' ;
    
    /* ======== You can't specify target table for update in FROM clause ======= */
    -- In MySQL, you can't modify the same table which you use in the SELECT part.
    -- http://www.xaprb.com/blog/2006/06/23/how-to-select-from-an-update-target-in-mysql/
    SELECT * FROM  story_category WHERE category_id NOT IN (
    SELECT DISTINCT category.id FROM category INNER JOIN story_category ON category_id=category.id);
    DELETE FROM  story_category WHERE category_id NOT IN (
    SELECT DISTINCT category.id FROM category INNER JOIN story_category ON category_id=category.id);
    /*
    UPDATE tbl AS a
      INNER JOIN tbl AS b ON ....
      SET a.col = b.col
    */
    DELETE FROM  story_category WHERE category_id NOT IN (SELECT DISTINCT
    category.id FROM category INNER JOIN
    story_category ON
    category_id=category.id);
    DELETE FROM  story_category WHERE category_id NOT IN (SELECT DISTINCT
    category.id FROM category);
    
    UPDATE My_Table
    SET Priority=Priority + 1
    WHERE Priority >= 1
    AND (SELECT TRUE FROM (SELECT * FROM My_Table WHERE Priority=1 LIMIT 1) as t);
    -- 通过建立新表,复制数据,修改数据,删除无用表的方法来达到目的
    drop table if exists apples;
    create table if not exists apples(variety char(10) primary key, price int);
    
    insert into apples values('fuji', 5), ('gala', 6);
    
    drop table if exists apples_new;
    create table if not exists apples_new like apples;
    insert into apples_new select * from apples;
    
    update apples_new
        set price = (select price from apples where variety = 'gala')
        where variety = 'fuji';
    rename table apples to apples_orig;
    rename table apples_new to apples;
    drop table apples_orig;
    
    
    


    展开全文
  • 数据库实验报告2 数据更新实验

    千次阅读 2020-04-29 14:28:37
    (1)理解和掌握数据库更新操作,能够使用SQL语句对数据库进行数据的插入、修改、删除操作。 (2)掌握SQL语句常见语法错误的调试方法。 二、 实验内容: 按照下列要求操作,并截取相应的结果图 1、教材79-80页三...

    一、 实验目的:

    (1)理解和掌握数据库更新操作,能够使用SQL语句对数据库进行数据的插入、修改、删除操作。
    (2)掌握SQL语句常见语法错误的调试方法。

    二、 实验内容:

    按照下列要求操作,并截取相应的结果图

    1、教材79-80页三张表student、course、sc中数据输入

    由于学生的学号收到完整性约束,Sno为主码,所以Sno的值唯一,不可重复。在实际操作时学号为201215120重复,出现了以下错误提示:在这里插入图片描述
    在这里插入图片描述
    改正后输出的表为:在这里插入图片描述
    Course表为:在这里插入图片描述
    SC表为:在这里插入图片描述
    2、按照教材3.5数据更新中例3.69至例3.78的要求操作3.5.1 插入数据

    1.插入元组
    【例3.69】 将一个新学生元组(学号:201215128,姓名:秦可卿,性别:女,所在系:IS,年龄18岁)插入到student表中。
    在student表的定义中,属性列的顺序是Sno,Sname,Ssex,Sdept,Sage。新增的属性列的顺序可以与表定义中的顺序不一样,如Sno,Sname,Ssex,Sage,Sdept。但值应该要与新增属性列相对应。 student表插入前:在这里插入图片描述
    插入语句:在这里插入图片描述
    插入后:在这里插入图片描述
    【例3.70】将学生史湘云的信息插入到student表中
    插入语句: 在这里插入图片描述
    into子句中只指出了表名,没有指出属性名,这表示新元组要在表的所有属性列上都指定值,且属性列的次序与表定义中的次序相同。 插入前: 在这里插入图片描述
    插入后:在这里插入图片描述
    【例3.71】插入一条选课记录(‘201215128’,’1’)。
    插入语句为:在这里插入图片描述
    关系数据库管理系统将在新插入记录的Grade列上自动的赋空值。 插入前:在这里插入图片描述
    插入后,学号为201215128的成绩为null:在这里插入图片描述
    也可以用下面的插入语句:在这里插入图片描述
    因为没有指出SC的属性名,在Grade列上要明确给出空值。 插入后,学号为201215126的元组与学号为201215128的元组类似。在这里插入图片描述

    2.插入子查询结果
    【例3.72】对每一个系,求学生的平均年龄,并把结果存入数据库
    首先在数据库中建立一个新表,其中一列存放系名,另一列存放相应的学生的平均年龄。代码如下:在这里插入图片描述
    执行结果为:在这里插入图片描述
    然后对student表按系分组求平均年龄,再把系名和平均年龄存入新表中。代码如下:在这里插入图片描述
    执行结果为: 在这里插入图片描述
    关系数据库管理系统在执行插入语句时,会检查所插元组是否破坏表上已定义的完整性规则。

    3.5.2 修改数据
    1.修改某一个元组的值
    【例3.73】将学生201215121的年龄改为22岁。
    代码为:在这里插入图片描述
    修改的元组需满足WHERE子句的条件,即学生的学号为201215121。 SET子句给出的表达式的值用于取代相应的属性列值,即年龄22岁取代17岁。 修改前:在这里插入图片描述
    修改后:在这里插入图片描述
    2.修改多个元组的值
    【例3.74】将所有学生的年龄增加1岁。
    代码为:在这里插入图片描述
    此代码省略了where子句,表示要修改表中的所有元组。 修改前:在这里插入图片描述
    修改后:在这里插入图片描述
    3.带子查询的修改语句
    【例3.75】将计算机科学系全体学生的成绩置零。
    代码为:在这里插入图片描述
    子查询语句也可嵌套在UPDATE语句中,用以构造修改的条件。 从学生表中找出系为CS的学生的学号,在到SC表中找到满足学号的元组,将元组中的Grade置为0。 在这里插入图片描述
    系为CS的学生的学号为201215120、201215121、201215126 修改前SC表:在这里插入图片描述
    修改后SC表: 在这里插入图片描述
    3.5.3删除数据
    【例3.76】删除学号为201215128的学生记录。
    删除语句为:在这里插入图片描述
    delete语句的功能是从指定表中删除满足where子句条件的所有元组。 但直接删除会出现如下错误提示: 在这里插入图片描述
    是因为删除操作破坏了参照完整性,所以要先把其他信息删除。 删除前:在这里插入图片描述
    删除后: 在这里插入图片描述
    2.删除多个元组的值
    【例3.77】删除所有的学生选课记录
    删除语句为: 在这里插入图片描述
    此语句省略where子句则表示删除表中全部元组,但表的定义仍在字典中。也就是说,delete语句删除的是表中的数据,而不是关于表的定义。 删除前: 在这里插入图片描述
    删除后:在这里插入图片描述

    3.带子查询的删除语句
    【例3.78】删除计算机科学系所有学生的选课记录。
    删除语句为:在这里插入图片描述
    子查询同样也可以嵌套在delete语句中,用以构造执行删除操作的条件。 在student表中,计算机科学系的学生的学号分别为201215120、201215121和201215126。 在这里插入图片描述
    删除前:在这里插入图片描述
    删除后:在这里插入图片描述
    3.教材70页习题6中SPJ数据库的创建,并在该数据库中创建S、P、J、SPJ四个表,再参照71页各表的数据输入记录
    供应商表S代码: 在这里插入图片描述
    供应商表S执行结果: 在这里插入图片描述
    零件表P代码:在这里插入图片描述
    零件表P执行结果: 在这里插入图片描述
    工程项目表J代码:在这里插入图片描述
    工程项目表J执行结果: 在这里插入图片描述 供应情况表SPJ代码:在这里插入图片描述
    供应情况表SPJ执行结果:在这里插入图片描述
    4、分别建三个带各种约束(PRIMARY KEY、FOREIGN KEY 、NOT NULL、UNIQUE、CHECK)的表student1、course1、sc1,和不带以上任何约束的表student2、course2、sc2,输入测试数据,验证数据的完整性约束,并截取结果图进行分析。

    PRIMARY KEY: 在student1表中,使Sno受到PRIMARY KEY的约束,代码如下:在这里插入图片描述
    在student1中插入两条元组,当两条元组的Sno同为201215120时,执行会出现错误警告:在这里插入图片描述
    而改为两个不同的学号后,插入成功: 在这里插入图片描述
    在这里插入图片描述
    在student2表中,Sno不受任何约束,代码如下:在这里插入图片描述
    同样插入两条学号相同的数据时,可以成功插入:在这里插入图片描述
    在这里插入图片描述
    UNIQUE:
    在student1表中,使Sname受到UNIQUE约束,即Sname必须取唯一值,插入以下语句: 在这里插入图片描述
    两条元组的Sname同为花袭人,执行时出现错误提示:在这里插入图片描述
    在student2表中,Sname不受到任何约束,插入相同的语句,可以成功插入: 在这里插入图片描述
    CHECK:
    在student1表中,Sage受到Sage>15并且Sage<20的约束。学号为201215126的同学的年龄为14岁,不在约束的范围内,所以执行时会出现错误提示:在这里插入图片描述
    在这里插入图片描述
    同理,学号为201215128的同学的年龄为21岁,也不在约束范围内,也会出现错误提示:在这里插入图片描述
    在这里插入图片描述
    在student2中,Sage不受CHECK的约束,所以在插入年龄为14岁和21岁同学的信息时,不会出现错误提示,可以插入成功: 在这里插入图片描述
    NULL:
    在course1表中,Cname不能取空值, 在这里插入图片描述
    在插入的元组Cname中值为null,执行时会出现错误提示: 在这里插入图片描述
    在course2表中,Cname不受任何约束,插入的元组Cname的值为null时,可成功插入: 在这里插入图片描述
    在这里插入图片描述
    FOREIGN KEY:
    表sc1的Sno和Cno是外码: 在这里插入图片描述
    删除student1中学号为201215120的学生的信息时,会出现错误:
    在这里插入图片描述
    同样,在删除course1中课程号为1的信息时,也会出现错误: 在这里插入图片描述
    在sc2表中,Sno和Cno不是外码,在删除student2中学号为201215120的学生的信息时,可成功删除:在这里插入图片描述
    但sc2表中学号为201215120的信息不因student2中信息的删除而缺少信息。 在这里插入图片描述
    同样在course2中删除课程号为1的信息时,可成功删除:在这里插入图片描述
    而sc2表不受影响: 在这里插入图片描述
    SQL代码:

    create table student
      ( Sno char(9) PRIMARY KEY, /*列级完整性约束条件,Sno是主码*/
        Sname char(20) UNIQUE,   /*Sname取唯一值*/
    	Ssex char(2),
    	Sage SMALLINT,
    	Sdept char(20)
      );
    insert into student (Sno,Sname,Ssex,Sage,Sdept)
    values ('201215120','贾宝玉','男',18,'CS'),
           ('201215121','林黛玉','女',17,'CS'),
    	   ('201215122','花袭人','女',18,'IS'),
    	   ('201215123','贾探春','女',19,'MA')
    select * from student
    create table Course
       ( Cno char(4) PRIMARY KEY,   /*列级完整性约束条件,Cno是主码*/
         Cname char(40) NOT NULL,   /*列级完整性约束条件,Cname不能取空值*/
    	 Cpno char(4),              /*Cpno的含义是先修课*/
    	 Ccredit SMALLINT,
    	 FOREIGN KEY (Cpno) REFERENCES Course(Cno)
    	                            /*表级完整性约束条件,Cpno是外码,被参照表是Course,被参照列是Cno*/
       );
    insert into Course
    values (1,'数据库',5,4),
           (2,'数学',null,2),
    	   (3,'信息系统',1,4),
    	   (4,'操作系统',6,3),
    	   (5,'数据结构',7,4),
    	   (6,'数据处理',null,2),
    	   (7,'PASCAL语言',6,4)
    select * from Course
    create table SC
       (Sno char(9),
        Cno char(4),
    	Grade SMALLINT,
    	PRIMARY KEY(Sno,Cno),    /*主码由两个属性构成,必须作为表级完整性进行定义*/
    	FOREIGN KEY (Sno) REFERENCES student(Sno),
    	                         /*表级完整性约束条件,Sno是外码,被参照表是student*/
    	FOREIGN KEY (Cno) REFERENCES Course(Cno) 
    	                         /*表级完整性约束条件,Cno是外码,被参照表是Course*/  
       );
    insert into SC
    values ('201215120',2,98),
           ('201215121',1,92),
           ('201215121',2,85),
    	   ('201215121',3,88),
    	   ('201215122',2,90),
    	   ('201215122',3,80)
    select * from SC
    insert 
    into student (Sno,Sname,Ssex,Sdept,Sage)
    values('201215128','秦可卿','女','IS',18);
    insert 
    into student
    values ('201215126','史湘云','女',18,'CS');
    insert 
    into SC(Sno,Cno)
    values('201215128','1');
    insert 
    into SC
    values('201215126','1',null);
    create table Dept_age
       ( Sdept char(15),
         Avg_age SMALLINT);
    select * from Dept_age
    
    insert 
    into Dept_age(Sdept,Avg_age)
    select Sdept,AVG(Sage) 
    from student group by Sdept;
    
    
    update student
    set Sage=22
    where Sno='201215121';
    
    select *from student;
    
    
    update Student 
    set Sage=Sage+1;
    
    
    
    update SC
    set Grade = 0 
    where Sno IN 
    (Select Sno from student where Sdept='CS');
    
    
    SELECT *FROM SC
    SELECT *FROM Course
    SELECT *FROM student
    
    
    delete from student where Sno='201215128';
    
    
    delete from SC;
    select *from SC;
    
    
    delete from SC 
    where Sno IN 
     (select Sno FROM student 
     where Sdept ='CS');
    
    
    
     create table student1
     ( Sno char(9) PRIMARY KEY, /*列级完整性约束条件,Sno是主码*/
        Sname char(20) UNIQUE,   /*Sname取唯一值*/
    	Ssex char(2),
    	Sage int check(sage>15 and sage <20),
    	Sdept char(20)
      );
    
    insert into student1 (Sno,Sname,Ssex,Sage,Sdept)
    values ('201215120','贾宝玉','男',18,'CS'),
           ('201215121','林黛玉','女',17,'CS')
    
    insert into student1 (Sno,Sname,Ssex,Sage,Sdept)
    values ('201215122','花袭人','女',18,'IS'),
    	   ('201215123','贾探春','女',19,'MA')
    
    insert 
    into student1
    values ('201215126','史湘云','女',14,'CS'),
           ('201215128','秦可卿','女',21,'IS')
    
    select * from student1
    
    
    
      create table course1
       ( Cno char(4) PRIMARY KEY,   /*列级完整性约束条件,Cno是主码*/
         Cname char(40) NOT NULL,   /*列级完整性约束条件,Cname不能取空值*/
    	 Cpno char(4),              /*Cpno的含义是先修课*/
    	 Ccredit SMALLINT,
    	 FOREIGN KEY (Cpno) REFERENCES course1(Cno)
    	                            /*表级完整性约束条件,Cpno是外码,被参照表是course1,被参照列是Cno*/
       );
    
    select * from course1
    
    insert into course1
    values (1,null,5,4)
    
    insert into course1
    values (1,'数据库',5,4),
           (2,'数学',null,2),
    	   (3,'信息系统',1,4),
    	   (4,'操作系统',6,3),
    	   (5,'数据结构',7,4),
    	   (6,'数据处理',null,2),
    	   (7,'PASCAL语言',6,4)
    
       create table sc1
       (Sno char(9),
        Cno char(4),
    	Grade SMALLINT,
    	PRIMARY KEY(Sno,Cno),    /*主码由两个属性构成,必须作为表级完整性进行定义*/
    	FOREIGN KEY (Sno) REFERENCES student1(Sno),
    	                         /*表级完整性约束条件,Sno是外码,被参照表是student*/
    	FOREIGN KEY (Cno) REFERENCES course1(Cno) 
    	                         /*表级完整性约束条件,Cno是外码,被参照表是Course*/  
       );
    
    insert into sc1
    values ('201215120',2,98),
           ('201215121',1,92),
           ('201215121',2,85),
    	   ('201215121',3,88),
    	   ('201215122',2,90),
    	   ('201215122',3,80)
    
    select * from sc1
    
    delete from student1 where Sno='201215120';
    
    delete from course1 where Cno='1';
    
    create table student2
     ( Sno char(9), 
        Sname char(20),  
    	Ssex char(2),
    	Sage int,
    	Sdept char(20)
      );
    
    select * from student2
    
    insert into student2 (Sno,Sname,Ssex,Sage,Sdept)
    values ('201215120','贾宝玉','男',18,'CS'),
           ('201215120','林黛玉','女',17,'CS')
    
    insert into student2 (Sno,Sname,Ssex,Sage,Sdept)
    values ('201215122','花袭人','女',18,'IS'),
    	   ('201215123','花袭人','女',19,'MA')
    
    insert 
    into student2
    values ('201215126','史湘云','女',14,'CS'),
           ('201215128','秦可卿','女',21,'IS')
    
     create table course2
       ( Cno char(4) PRIMARY KEY,   /*列级完整性约束条件,Cno是主码*/
         Cname char(40) ,  
    	 Cpno char(4),              /*Cpno的含义是先修课*/
    	 Ccredit SMALLINT
       );
    
    select * from course2
    
    insert into course2
    values (1,null,5,4)
    
    insert into course2
    values (2,'数学',null,2),
    	   (3,'信息系统',1,4),
    	   (4,'操作系统',6,3),
    	   (5,'数据结构',7,4),
    	   (6,'数据处理',null,2),
    	   (7,'PASCAL语言',6,4)
    
    create table sc2
       (Sno char(9),
        Cno char(4),
    	Grade SMALLINT,
    	PRIMARY KEY(Sno,Cno),    /*主码由两个属性构成,必须作为表级完整性进行定义*/ 
       );
    
    insert into sc2
    values ('201215120',2,98),
           ('201215121',1,92),
           ('201215121',2,85),
    	   ('201215121',3,88),
    	   ('201215122',2,90),
    	   ('201215122',3,80)
    
    select * from sc2
    
    delete from student2 where Sno='201215120';
    
    delete from course2 where Cno='1';
    
    展开全文
  • 实验一 数据定义和数据更新

    千次阅读 2019-05-21 20:23:56
    实验一 数据定义和数据更新 实验教室 913 实验日期 2018年10月8日 学 号 2016214220 姓 名 ** 专业班级 .....
  • 实验六七 SQL的数据更新

    千次阅读 2020-05-31 22:31:34
    实验六 SQL的数据更新 实验时间:2课时 实验性质:验证 实验主要内容及方法: SQL数据的插入、修改和删除 实验要求: (1) 掌握SQL数据插入、修改和删除语句的一般格式。; (2) 掌握SQL数据插入、修改和删除使用...
  • 实验数据更新

    2018-07-06 22:23:04
     实验目的1. 熟悉使用UPDATE/INSERT/DELETE语句进行表操作;2. 能将这些更新操作应用于实际操作中去;二. 实验准备1. 了解更新语句的基本语法和用法;2. 建立相关数据库,并在数据库中建立表,表中有一定量的...
  • 实验数据更新

    千次阅读 2018-05-09 21:53:24
    实验四SQL的数据更新一、实验目的1.掌握使用SQL语言命令进行数据的插入、修改、删除,完成数据更新。2.进一步熟悉关系数据库的三类完整性约束的作用,运用SQL命令进行数据的插入、修改、删除时,验证其约束。 二...
  • 实验一 数据定义和数据更新(选作) 一、实验目的: (1)熟悉数据库的交互式SQL工具SQL Developer的使用 (2)通过本实验能够熟练应用SQL语言进行基本表和索引的定义,能够对表的结构进行修改和删除,并通过数据更新...
  • 在保证需操作的数据库中已经存在XSKC模式下的数据表student、course、sc 1、修改数据表信息 1)修改student表,将cs系姓名为“李咏”的学生姓名为“李勇” UPDATE XSKC.student SET sname = ‘李勇’ WHERE ...
  • 数据库实验数据更新

    万次阅读 2018-09-19 22:05:11
    一、实验目的:   熟悉使用UPDATE/INSERT/DELETE语句进行表操作; 能将这些更新操作应用于实际操作中去;   二、实验环境及准备:   了解更新语句的基本语法和用法; 建立相关数据库,并在数据库中建立表...
  • 实验数据更新操作 一. 实验目的 掌握INSERT/UPDATE/DELETE语句的使用。 体会数据更新操作对完整性约束的影响。 二. 实验准备 1. 准备基本表中的数据。 2. 了解INSERT、UPDATE及DELETE语句。 三. 实验要求 ...
  • SQL语言-数据更新操作 1.在教学管理数据库jxgl中,使用MySQL Workbench在表中导入表5-1和表5-2的数据 将所给数据导入student表: insert into student values ('2005010','赵春江',18,'男','Cs'), ('2005011','...
  • SQL Sever实验三 视图与数据更新

    千次阅读 2018-11-05 20:52:47
    1.掌握创建视图的 SQL 语句,数据更新的 SQL 语句。 2.了解使用创建视图向导创建视图的方法。 3.掌握使用 SQL 创建视图的方法,使用 SQL 更新数据的方法。   二. 实验准备 1.了解创建视图与数据更新的...
  • 1) 掌握运用SQL语句实现表的更新操作。 2) 掌握运用SQL语句实现表的查询操作。 包括: (1)掌握SELECT子句以及WHERE子句的使用方法。 (2)学会应用ORDER BY子句。 (3)掌握5种基本的库函数。 (4)学会...
  • 实验数据更新和视图 实验目的: 1.熟练掌握SQL的常用数据更新操作。 2.熟练应用INSERT,UPDATE,DELETE语句。 3.掌握更新操作的各种格式。 4.掌握视图的创建、更新、删除和查询。 实验过程: 1)插入如下学生记录...
  • 视图、索引及数据更新实验报告

    千次阅读 2016-12-20 11:26:59
    一、实验目的  熟练掌握索引的建立与删除的方法,熟练掌握SQL的应用,熟 ... 2、掌握数据插入、修改、更新和删除。  3、掌握索引、视图的创建。  4、掌握索引、视图的删除。 三、实验仪器设备及器材
  • 数据更新与视图

    千次阅读 2016-10-08 13:34:00
    数据更新与视图
  • 1)掌握运用Transact-SQL语句实现表的更新操作。 2)掌握运用Transact-SQL语句实现表的查询操作。 包括: (1)掌握SELECT子句以及WHERE子句的使用方法。 (2)学会应用ORDER BY子句。 (3)掌握5种基本的聚合函数...
  • update语句用于对表进行更新,如将信息系所有学生的年龄增加1岁;delete语句用于对表进行删除,insert语句用于对表进行插入![图片](https://img-ask.csdn.net/upload/201704/12/1491996385_832686.jpg)
  • 实验内容1、基于Student_DB数据库中的三个表Student,Course,SC,进行如下的查询:(1) 查询每个学生及其选修课情况(使用自然连接)。select student.*,SC.* from student,SC where student.Sno=SC.Sno ...
  • SQL Server数据更新

    千次阅读 2018-11-10 00:53:13
    文章目录1.实验目的2.实验内容3.实验环境实验步骤及结果 1.实验目的 &amp;amp;amp;... 通过本次实验使学生掌握SQL数据更新操作。 2.实验内容 数据插入 数据修改 数据删除 3.实验环境 Windows
  • 掌握SQL的常用数据更新操作,熟练应用INSERT,UPDATE,DELETE语句。 实验内容 1. 插入如下学生记录(学号:95030,姓名:李莉,年龄:18) insert into student(sno,sname,sage) values ('95030','李莉',18) 2. ...
  • Sql Server数据库 实验3 数据更新

    千次阅读 2017-05-20 12:59:35
    实验数据更新   一、实验目的 1.掌握基本表的Insert,Update,Delete操作 2.掌握视图的Insert,Update,Delete操作    二、实验环境(实验的软件、硬件环境) 硬件:PC机 软件:SQL2000   三、...
  • SQL 数据更新语句

    千次阅读 2019-07-24 09:42:13
    加深对SQL数据更新(插入、修改及删除)语句的基本语法格式的掌握 2. 掌握单个元组及多个元组的插入、修改及删除操作的实现过程 3. 加深对更新操作时数据库中数据一致性问题的了解 4. 加深对约束条件在...
  • 本教程内容包括:ArcGIS平台简介、ArcGIS应用基础、空间数据的采集与组织、空间数据的转换与处理、空间数据的可视化表达、GIS空间分析导论、矢量数据的空间分析、栅格...ArcGIS实验教程——实验三:矢量数据采集与编辑
  • 文章目录数据更新操作(INSERT/UPDATE/DELETE语句的使用,以诸子百家为例)一、 实验目的二、 实验要求三、 实验内容1. 数据插入操作2.数据修改与删除操作四、实验步骤五、实验总结 数据更新操作(INSERT/UPDATE/...
  • EF多表关联数据更新

    万次阅读 2016-12-08 13:43:45
    多表关联数据更新 如何使用原生SQL 总结 多表关联数据更新 我们在第四篇文章已经讲过数据的更新了,不过那个是针对单表结构的更新。 这次我们讲下使用EF进行关联数据的更新。 关联数据
  • 交互式SQL(4)—数据更新及完整性检查 三、实验内容及步骤(在实验报告中记录每个查询的SQL语句) ① 向表Students 中插入(0601001,赵林, 男,1985-09-08,计算机)的记录。 ② 向SC 表中添加一个学生的选课记录,学号为...
  • HIVE中数据更新(update)操作的实现

    万次阅读 2015-12-30 09:19:34
    数据更新是一种常见的操作,然后数据仓库的概念一般要求的是数据是集成、稳定的。HIVE作为一种分布式环境下以HDFS为支撑的数据仓库,它同样更多的要求数据是不可变的。 然而现实很多任务中,往往需要对数据进行...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 228,036
精华内容 91,214
关键字:

数据更新实验