All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
C#中MessageQueue组件应用实例
SQL,Server存储过程编写和优化经验_[SQL,Server教程]
通用高效分页存储过程代码_[SQL,Server教程]
减轻javascript测试和调试负担_JavaScript技术_编程技术
oracle,SQL性能优化_mssql学习_编程技术
如何在.NET框架下创建Access数据库和表?_[Asp.Net教程]
初学者学习PHP开发应该掌握的几段精华代码_php资料_编程技术
SQL语句经验技巧_[SQL Server教程]
动态网页技术PHP程序中包含文件问题_php资料_编程技术
C#教程:DLL动态链接库的故障排除工具
Reading number is top 10 pictures
奇趣的世界记录2
The Soviet union swimsuit exposure in the 70 year3
中国女孩大胆自拍,显露完美身材3
A resort photographed beautiful young woman change clothes process vomiting blood1
Plump breasts1
英雄联盟超神十连杀截图
The cat shit
Discharge accidentally Actresses by the breast3
含苞欲放的素颜美少女3
A man's favorite things7
Download software ranking
传奇私服架设教程-chm
asp.net技术内幕
Rio big adventure
Tram sex maniac 2 (H) rar bag1
Unix video tutorial2
Tram sex maniac 2 (H) rar bag3
Boxer's Top ten classic battle1
The Bermuda triangle2
WebService在.NET中的实战应用教学视频 → 第2集
Unix video tutorial18
归海一刀 published in(发表于) 2014/2/3 6:47:59 Edit(编辑)
解析SQL Server 2008中的新语句:MERGE_[SQL Server教程]

解析SQL Server 2008中的新语句:MERGE_[SQL Server教程]

解析SQL Server 2008中的新语句:MERGE_[SQL Server教程]

  Microsoft SQL Server 2008将包含用于合并两个行集(rowset)数据的新句法。根据一个源数据表对另一个数据表进行确定性的插入、更新和删除这样复杂的操作,运用新的MERGE语句,开发者只需使用一条命令就可以完成。


  在对两个表进行信息同步时,有三步操作必须要进行。首先我们要处理任何需要插入目标数据表的新行。其次是处理需要更新的已存在的行。最后要删除不再使用的旧行。这个过程中需要维护大量重复的逻辑,并可能导致微妙的错误。


  值得我们大家主意的是,Bob Beauchemin讨论了MERGE语句,这个语句将上述的多个操作步骤合并成单一语句。以下是他给出的示例:


  以下是引用的片断:


merge [target] t


using [source] s on t.id = s.id


when matched then update t.name = s.name, t.age = s.age -- use "rowset1"


when not matched then insert values(id,name,age) -- use "rowset2"


when source not matched then delete; -- use "rowset3"


  大家可以看到,具体的操作是根据后面的联合(join)的解析结果来确定的。在这个示例中,假如目标和源数据表有匹配的行,就实行更新操作。如果没有,就实行插入或者删除操作来使目标数据表和源数据表保持一致。


  这个新句法的一个精妙之处是它在处理更新时的确定性。在使用标准的UPDATE句法和联合时,可能有超过一个源行跟目标行匹配。在此情况下,无法预料更新操作会采用哪个源行的数据。


  而我们在使用MERGE句法时,假如存在多处匹配,它会抛出一个错误。这就需要开发者主意,要达到预想的目标,当前的联合条件还不够十分明确。







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.