惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

F
Full Disclosure
V
Vulnerabilities – Threatpost
Attack and Defense Labs
Attack and Defense Labs
N
News and Events Feed by Topic
SecWiki News
SecWiki News
S
Security @ Cisco Blogs
Schneier on Security
Schneier on Security
B
Blog
TaoSecurity Blog
TaoSecurity Blog
The Last Watchdog
The Last Watchdog
H
Hacker News: Front Page
Hacker News - Newest:
Hacker News - Newest: "LLM"
博客园_首页
D
Docker
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Y
Y Combinator Blog
W
WeLiveSecurity
N
News and Events Feed by Topic
F
Fortinet All Blogs
PCI Perspectives
PCI Perspectives
WordPress大学
WordPress大学
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Recent Announcements
Recent Announcements
Forbes - Security
Forbes - Security
T
Tailwind CSS Blog
Hacker News: Ask HN
Hacker News: Ask HN
爱范儿
爱范儿
腾讯CDC
Last Week in AI
Last Week in AI
月光博客
月光博客
C
Cybersecurity and Infrastructure Security Agency CISA
P
Proofpoint News Feed
Help Net Security
Help Net Security
V
V2EX
C
Cyber Attacks, Cyber Crime and Cyber Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
H
Heimdal Security Blog
L
LINUX DO - 最新话题
GbyAI
GbyAI
The Hacker News
The Hacker News
罗磊的独立博客
S
SegmentFault 最新的问题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 【当耐特】
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
V2EX - 技术
V2EX - 技术
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
O
OpenAI News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻

博客园 - 系咪噶

[JAVA基础]流文件读写文件编码转换 最近转战东软 apache 新建虚拟机 +Zend Framework建立 Apache + php 配置 php基础教程之PHP面向对象技术(全面讲解) 今日无事,将一同志之毕设完结 SQL查询基本练习1:(作业) 面向对象之CoreJava(第一课) CVS的使用(一课时) PL/SQL第三课(学习笔记) PL/SQL第二课(作业) PL/SQL第二课(学习笔记) PL/SQL第一课(学习笔记) Oracle第五课(学习笔记) Oracle第四课(学习笔记) 全步骤安装mysql SQL Server 存储过程的分页 无法连接到Visual Studio 的Localhost Web服务器 Oracle第三课(学习中笔记)
SQL Server 高级应用(周六讲座)
系咪噶 · 2008-08-16 · via 博客园 - 系咪噶

数据库完整性高级约束的应用

数据完整性,约束
数据完整性:数据库中存储 的数据是可靠的、准确的、能够正确反应实际情况
1、数据库中要求保持数据的完整性。
2、数据库中存在不正确、不准确的数据就认为数据库“失去了完整性”。
3、数据库“失去了完整性”引起的原因,大多是处于设计引起的。
4、保证数据完整性的方法,使用约束

约束:SQL Server用来强制数据完整性的机制(方法)
1、约束目的:保证数据库中数据的质量,即保证数据完整性。
2、约束和数据完整性的比较
3、如何使用约束:SQL server 创建表的过程是规定数据列的属性的过程,也是实是数据完整性约束的过程。
创建表:创建约束=强制数据的完整性
创建表的过程,就是创建约束。

域完整性 == 列完整性
not NULL
DEFAULT
CHECK
实体完整性:就是有重复的记录
Identity,GUID
PRIMARY KEY
UNIQUE
引用完整性:约束方法;外键约束
FOREIGN KEY
CHECK
自定义完整性:
缺点:麻烦写代码
优点:灵活
方法:规则,存储过程,触发器

************************************

事务目标
事务的概念

事务的分类
1、自动提交事务
是SQL Server的默认模式,每条单独的T=SQL语句都是一个事务,如果成功执行则自动提交:如果错误则自动回滚,不需要显示地写出事务的开始和结束的标志。
2、显式事务
用begin tran[saction]明确指定事务的开始,
以commit 或 rollback 语句显式结束,这是最常用的事务类型,
例1:
    begin tran
    update authors set an_lname ='a' where au_id ='172-32-1176'
    commit tran      
    --rollback tran
3、隐性事务
用set implicit transactions on将隐性事务模式设置为打开,在前一个事务完成时新事务隐式启动,每个事务仍以commit或rollback语句显式结束。
例2:
    create table q(q1 int primary key, q2 char(3)
    set implicit_transcations on
 on     insert into q values (1,'aaa')
    insert into q values (2,'bbb')
    commit transaction
    insert into q values (3,'ccc')
    select * from q
    commit transaction
    set implicit_transactions off;

如何创建事务
T-SQL定义事务语句有L
1、开始事务:BEGIN TRAN[SACTION]
2、提交事务:COMMIT TRAN[SACTION]
3、回滚事务:ROLLBACK TRAN[SACTION]
判顿某条语句执行是否出错:
1、使用全局变量@@ERROR
@@ERROR只能判断当前一条T-sql语句只想是否有错
为了判但事务中所有T-SQL语句是否有错,我们需要对错误进行累计:
    如:SET @errorSum =@errorSum+@@error