亚洲成人一区在线观看_天堂网www_国产精品久久9_中文在线播放_伊人天天_久久精品久久久精品美女

當前位置:首頁 > 網站舊欄目 > 學習園地 > 程序開發教程 > 解讀SQL Server2008的新語句MERGE

解讀SQL Server2008的新語句MERGE
2010-01-17 10:59:23  作者:  來源:
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句法時,如果存在多處匹配,它會拋出一個錯誤。這就提醒了開發者,要達到預想的目標,當前的聯合條件還不夠明確。

安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 国产精品第一区 | 亚洲精品免费在线观看 | 色视频网站在线观看 | 久久久久久亚洲 | 91精品国产综合久久久久 | 少妇精品久久久久久久久久 | 成人在线观看免费视频 | 伊人网视频 | 亚洲精品久久久久一区二区三区 | 中文字幕精品视频在线观看 | 成人a在线 | 日韩精品一区二区三区中文在线 | 九九国产| 国产精品视频一区二区三区不卡 | 少妇色欲网 | 国产午夜精品久久久 | 成人av免费在线 | 久久九九| 成人av一区二区三区 | 久久中文字幕一区二区 | 夜夜草天天干 | 丝袜 亚洲 另类 欧美 综合 | 亚洲人成在线观看 | 国产视频一区二区 | 欧美一级在线免费观看 | 日韩在线一区二区三区 | 91免费国产 | 不用播放器的av | 成人欧美一区二区三区在线观看 | 特大毛片 | 亚洲一区中文字幕 | 大香伊蕉在人线视频777 | 久久久日本 | 欧美久久久久久久久久伊人 | 日本免费视频在线观看 | 91精品久久久久久久久中文字幕 | 在线日韩视频 | 中文字幕免费视频观看 | 欧美一区二区三区四区视频 | 日本在线网 | 操人在线观看 |