本文出自:http://blog.csdn.net/svitter

实验目标:熟悉实体完整性,参照完整性,事务的处理;

/*1.在数据库school表中建立表Stu_uion,进行主键约束,在没有违反实体完整性的前提下插入并更新一条记录*/
Use school
create table stu_uion
(
sno char(5) not null unique,
sname char(8),
ssex char(1),
sage int,
sdept char(20),
constraint pk_stu_uion primary key (sno)
);
insert stu_uion values('10000', 'Wangmin', '1', 23, 'CS');
update stu_uion set sno = ' '
where sdept = 'CS';
update stu_uion set sno = '92002'
where sname = 'Wangmin';
select * from stu_uion; /*2.3.演示违反实体完整性的插入,更新操作*/
Use school
insert stu_uion values('10000', 'Li hua', '1', 23, 'CS');/*unique*/
update stu_uion set sno = NULL where sno = '10000'; /*not null*/ /*4.演示事务的处理,包括事务的建立,处理,以及出错事务的回退*/
Use school
set xact_abort on
/*设置xact_abort 为on时,如果transaction(事务)语句出现错误,那么整个事务都会回滚
*如果设置其为off时,只回滚出错的语句*/
begin transaction t1
insert into stu_uion values('95009', 'Li yong', 'M', 25, 'EE');
insert into stu_uion values('95003', 'wang hao', '0', 25, 'EE');
insert into stu_uion values('95005', 'wang hao', '0', 25, 'EE');
select * from stu_uion ;
commit transaction t1 /*5.通过建立scholarship表 ,插入数据,演示当前与现有的数据环境不等时,无法建立实体完整性以及参照完整性*/
Use school
Create table Scholarship
(
M_ID varchar(10),
Stu_id char(10),
R_money int
);
insert into scholarship values('0001', '700000', 5000);
insert into scholarship values('0001', '800000', 5000);
select * from scholarship; /*constraint*/
Use school
alter table scholarship add
constraint pk_scholarship primary key(M_ID);/*pk: primary key*/
/*存在两个0001,无法建立主键约束*/ /**scholarship中的数据,不满足stu_id和students表中的sid对应性,创建参照完整性失败*/ Use school
alter table scholarship add
constraint fk_scholarship foreign key (Stu_id) references students(sid);
作者:svitter 发表于2014-5-5 15:12:29 原文链接
阅读:142 评论:0 查看评论

[原]SQL_实验2.1.3 清华大学出版社的更多相关文章

  1. 踢爆IT劣书出版黑幕——由清华大学出版社之《C语言入门很简单》想到的(1)

    1.前言与作者 首先声明,我是由于非常偶然的机会获得<C语言入门很简单>这本书的,绝对不是买的.买这种书实在丢不起那人. 去年这书刚出版时,在CU论坛举行试读推广,我当时随口说了几句(没说 ...

  2. 《C语言入门1.2.3—一个老鸟的C语言学习心得》—清华大学出版社炮制的又一本劣书及伪书

    <C语言入门1.2.3—一个老鸟的C语言学习心得>—清华大学出版社炮制的又一本劣书及伪书 [薛非评] 区区15页,有80多个错误. 最严重的有: 通篇完全是C++代码,根本不是C语言代码. ...

  3. 《JavaWeb从入门到精通》(明日科技,清华大学出版社)

    <JavaWeb从入门到精通>(明日科技,清华大学出版社)

  4. 《Linux企业应用案例精解》一书已由清华大学出版社出版

    <Linux企业应用案例精解>简介 650) this.width=650;" border="0" alt="223754878.jpg" ...

  5. JavaScript从入门到精通(附光盘1张):作者:明日科技出版社:清华大学出版社出版时间:2012年09月

    本书介绍 一:本书 pdf 获取信息 本书下载:请申请加入本群 (QQ群:668345923),   并联系群主. 本群主有:本书pdf 全文教材 及附带的 光盘内容 二:本书目录介绍 第1篇  基 ...

  6. 编译原理--02 自顶向下、自底向上的LR分析复习(清华大学出版社第3版)

    前言 目录 01 文法和语言.词法分析复习 02 自顶向下.自底向上的LR分析复习 03 语法制导翻译和中间代码生成复习 04 符号表.运行时存储组织和代码优化复习 第4章 自顶向下的语法分析方法 确 ...

  7. 清华大学出版社即将推出的又一本挂羊头卖狗肉的劣书 《C语言入门1.2.3—一个老鸟的C语言学习心得》

    http://www.tup.com.cn/book/showbook.asp?CPBH=051892-01

  8. Oracle+PL+SQL从入门到精通.丁士锋.清华大学出版社.2012

    \t第1篇 pl/sql开发入门第1章 oracle 11g数据库系统1.1 关系型数据库系统介绍1.1.1 什么是关系型数据模型1.1.2 数据库系统范式1.1.3 关系型数据库管理系统1.1.4 ...

  9. 《VSTO开发中级教程》刘永富 著 清华大学出版社 在线购买

    现在可以和作者 刘永富 通过“二手书直卖”这个APP直接买书. 二手书直卖 的下载方法: 方法一:加QQ群61840693,群共享中搜索“二手书直卖”,下载后打开即可. 方法二:从本帖下载:二手书直卖 ...

随机推荐

  1. ORM框架:EF与NHibernate了解

    在.Net Framework SP1微软包含一个实体框架(Entity Framework),此框架可以理解成微软的一个ORM产品.用于支持开发人员通过对概念性应用程序模型编程(而不是直接对关系存储 ...

  2. c#程序中使用"like“查询access数据库语句的问题

    在写使用access数据库的c#程序过程中,遇到各种莫名奇妙的问题.例如使用"like"进行模糊查询,在access查询视图中要使用"*"做模糊匹配(sql中是 ...

  3. Access“存储过程"参数顺序要与执行代码生成的参数顺序一致

    OleDbParameter olp; OleDbCommand cmd = new OleDbCommand("insertYjsData"); olp = new OleDbP ...

  4. ddl语句

  5. oracle新建数据库时怎么选择编码格式

    源地址:https://zhidao.baidu.com/question/2009631596107727508.html 启动database configuration assistant,创建 ...

  6. linux命令行与shell脚本编程大全---bash shell命令

    PS1 =“[\t][\u]\$”                  //新的shell提示符显示了当前时间和用户名 在Windows中,你经常看到这样的文件路径:D:\work\FTL moniqi ...

  7. java中读取文件以及向文件中追加数据的总结

    package gys; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; imp ...

  8. Ext.Form 自动填写表单内容

    前台: 表单必须含有name属性 if (action == 'edit' || action == 'show') { MyForm1.getForm().load({ url: '/data/cu ...

  9. [ASP.NET]asp.net Repeater控件的使用方法

    asp.net Repeater控件的使用方法 -- : 4770人阅读 评论() 收藏 举报 asp.netserveraspdatasetdeletexhtml 今天学习了,Repeater控件 ...

  10. [SQL]分布师查询

    EXEC sp_addlinkedserver @server='serverA', @srvproduct='', @provider='SQLOLEDB', @datasrc='192.168.0 ...