- 1、本文档共167页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL SERVER 2008 SSIS 基础文档
SQL SERVER 2008 SSIS 基础文档
1 时间戳
一直对时间戳这个概念比较模糊,相信有很多朋友也都会误认为:时间戳是一个时间字段,每次增加数据时,填入当前的时间值。
其实这误导了很多朋友。
1.1 基本概念 时间戳
数据库中自动生成的唯一二进制数字,与时间和日期无关的, 通常用作给表行加版本戳的机制。存储大小为 8 个字节。每个数据
库都有一个计数器,当对数据库中包含 timestamp 列的表执行插入或更新操作时,该计数器值就会增加。该计数器是数据库时间戳。这
可以跟踪数据库内的相对时间,而不是时钟相关联的实际时间。一个表只能有一个 timestamp 列。每次修改或插入包含 timestamp 列的
行时,就会在 timestamp 列中插入增量数据库时间戳值。这一属性使 timestamp 列不适合作为键使用,尤其是不能作为主键使用。对行
的任何更新都会更改 timestamp 值,从而更改键值。如果该列属于主键,那么旧的键值将无效,进而引用该旧值的外键也将不再有效。
如果该表在动态游标中引用,则所有更新均会更改游标中行的位置。如果该列属于索引键,则对数据行的所有更新还将导致索引更新。使
用某一行中的 timestamp 列可以很容易地确定该行中的任何值自上次读取以后是否发生了更改。如果对行进行了更改,就会更新该时间
戳值。如果没有对行进行更改,则该时间戳值将与以前读取该行时的时间戳值一致。若要返回数据库的当前时间戳值,请使用 @@DBTS。
1.2 时间戳的作用
在控制并发时起到作用:
用户 A/B 同时打开某条记录开始编辑,保存是可以判断时间戳,因为记录每次被更新时,系统都会自动维护时间戳,所以如果保
存时发现取出来的时间戳与数据库中的时间戳不相等,说明在这个过程中记录被更新过,这样的话可以防止别人的更新被覆盖。
1.3 时间戳的应用
简单说一下,timestamp 主要是记录该行的最后修改时间戳,注意,这个时间戳是不可以转换为时间的,只能标注该行修改了。
有什么用呢?通常是用在数据增量更新方面,比如说,我从该表复制数据到另外一个表,但是如果我想只复制更新过的,那么从最
后一次更新的时候,记录最大的 timestamp 的值,然后在当前更新的时候,只要where 条件找出大于最后一次更新的 timestamp 值的所
有行。然后抽取到更新过的数据,进行复制到另外一个服务器,这就是增量更新用到的。
1.4 在SQL 中的应用例子
(微软的建议 -- timestamp 语法已被取代,在 DDL 语句,请尽量使用 rowversion 而不是 timestamp。未来的 Microsoft SQL Server 版
本将移除这项功能。
参见/zh-cn/library/ms182776.aspx)
RowsVersion 就是timestamp
丢失更新的解决方法
丢失更新概念:当用户同时修改一行数据,他们先读取数据,放在前端进行修改,当修改后,再提交数据,这样最后提交的数据会覆盖先
前提交的数据,这样就造成了丢失更新。
长话短说,介绍防止丢失更新的方法:
使用RowsVersion 时间戳。
每次更新的时候,mssql 都会自动的更新rowversion 的值,若一行在读前与更新前的值前后不一致,就说明有其他的事务更新了此列,这
样就可以不更新此列,从而防止了丢失更新的情况。
例子 : declare table tmp(a varchar(10),b rowsversion)
insert into tmp(a) values( abc)
事务A:
declare @rv rowversion
select @rv=b from tmp where a=abc waitfor delay 00:00:05
update tmp set a=xyz where b=@rv
事务B:update tmp set a=aaa where b=@rv
事务A 在执行完毕后会发现并没有将aaa给抹去,这样就防止了丢失更新的现象。
第 1 页 共 167 页
2 SSIS 中VB 代码的使用
首先讲一下VB 的概述
2.1 VB 的概念及使用
Visual Basic(简称VB)是Microsoft 公司开发的一种通用的基于对象的程序
您可能关注的文档
- SL-V用户手册.pdf
- SL1500风电机组操作手册.pdf
- SINUMERIK 828D培训讲义20091116.pdf
- Slic3r切片中文使用手册.pdf
- SL功能和3DC防碰撞功能.pdf
- SK-2Z16软件使用手册_CN(08.07.23).pdf
- SL型锁风定量给煤机使用维护手册.pdf
- Silabs产品选型手册.pdf
- SmartDrawing 4.0敏捷标注系统培训教程.pdf
- SINOMA立磨.pdf
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
最近下载
- 基于Android开发的购物商城App的设计与实现-毕业设计.pdf VIP
- 测绘中级工程师职称答辩题库.pdf
- 办公大楼供电设备管理维护方案.docx VIP
- 学习小组组织与管理小组组织与管理实施计划.docx
- 2024年中考物理二轮题型(全国通用)压轴题:含压强、浮力、杠杆、滑轮的机械效率的综合计算(解析版).pdf VIP
- 高校学生工作案例分析的方法与技巧.pdf VIP
- 基于Android的网上商店商城购物系统app的设计与实现毕业论文.docx
- 地理学概论地理科学研究的基本方法.ppt
- 八年级上册英语完形填空、阅读理解专题100题(含参考答案).pdf VIP
- 2023年肺癌脑转移中国治疗指南.docx
文档评论(0)