色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

解讀SQL Server2008的新語句MERGE

瀏覽:127日期:2023-11-03 08:20:04

SQL Server 2008將包含用于合并兩個行集(rowset)數(shù)據(jù)的新句法。根據(jù)一個源數(shù)據(jù)表對另一個數(shù)據(jù)表進(jìn)行確定性的插入、更新和刪除這樣復(fù)雜的操作,運用新的MERGE語句,開發(fā)者用一條命令就可以完成。

對兩個表進(jìn)行信息同步時,有三步操作要進(jìn)行。首先要處理任何需要插入目標(biāo)數(shù)據(jù)表的新行。其次是處理需要更新的已存在的行。最后要刪除不再使用的舊行。這個過程中需要維護(hù)大量重復(fù)的邏輯,并可能導(dǎo)致微妙的錯誤。

Bob Beauchemin討論了MERGE語句,這個語句將上述的多個操作步驟合并成單一語句。他給出了如下的例子:

以下是引用片段:

merge [target] tusing [source] s on t.id = s.idwhen 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' 如你所見,具體操作是根據(jù)后面的聯(lián)合(join)的解析結(jié)果來確定的。在這個例子中,如果目標(biāo)和源數(shù)據(jù)表有匹配的行,就實行更新操作。如果沒有,就實行插入或者刪除操作來使目標(biāo)數(shù)據(jù)表和源數(shù)據(jù)表保持一致。

這個新句法的一個美妙之處是它在處理更新時的確定性。在使用標(biāo)準(zhǔn)的UPDATE句法和聯(lián)合時,可能有超過一個源行跟目標(biāo)行匹配。在這種情況下,無法預(yù)料更新操作會采用哪個源行的數(shù)據(jù)。

而當(dāng)使用MERGE句法時,如果存在多處匹配,它會拋出一個錯誤。這就提醒了開發(fā)者,要達(dá)到預(yù)想的目標(biāo),當(dāng)前的聯(lián)合條件還不夠明確。

標(biāo)簽: Sql Server 數(shù)據(jù)庫
主站蜘蛛池模板: 五月激激激综合网色播免费 | 黄色三级免费网站 | 国产精品免费观看视频 | 日本成人免费在线 | 手机看片国产免费永久 | 欧美一级在线全免费 | 国产91精品一区二区麻豆亚洲 | 国产精品久久免费 | 亚洲天堂手机在线 | 国产精品中文 | 久久精选视频 | 波多野结衣一区在线观看 | 中文字幕视频在线观看 | 精品一区国产 | 国产美女一区二区三区 | 国产成人精品天堂 | 国产真实乱系列2孕妇 | 欧美特黄一级视频 | 免费观看欧美性一级 | 欧美精品xxx | 国产自产v一区二区三区c | 日黄网站 | 亚洲毛片 | 国产手机在线小视频免费观看 | 日本免费人做人一区在线观看 | 一级一毛片a级毛片欧美 | 国产短裙黑色丝袜在线观看下 | a毛片视频 | 草草影院ccyy国产日本欧美 | 亚洲欧美成人综合在线 | 日本在线观看www免费 | 久久精品在线免费观看 | 久爱免费观看在线网站 | 亚洲国产日韩欧美高清片a 亚洲国产日韩欧美在线 | 亚洲第一影院 | a毛片免费全部播放完整成 a毛片免费全部在线播放毛 | 欧美精品高清在线观看 | 国产亚洲精品一品区99热 | 精品国产区一区二区三区在线观看 | 国产成人高清亚洲一区久久 | 日韩欧美在线观看 |