日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

在SQL Server 2008中運(yùn)用表值參數(shù)(TVP)(2)_Mssql數(shù)據(jù)庫(kù)教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:SQL Server數(shù)據(jù)庫(kù)增強(qiáng)版?zhèn)浞蒹w驗(yàn)
老鳥說事:Microsoft SQL Server數(shù)據(jù)庫(kù)增強(qiáng)版?zhèn)浞蒹w驗(yàn) 在歐洲,有一首流傳很廣的民諺: 因?yàn)閬G失一根鐵釘,我們失去了一塊馬蹄鐵; 因?yàn)槭ヒ粔K馬蹄鐵,我們失去了一匹駿馬; 因?yàn)槭?/p>

 除了簡(jiǎn)單的查找源系統(tǒng)鍵的代理鍵之外,還有一種情況可利用表值參數(shù),即事實(shí)表含有一個(gè)不存在于維度表的源系統(tǒng)鍵。在這種情況下,我們則想要在維度里創(chuàng)建一個(gè)推斷成員(Inferred member),也就是說,創(chuàng)建一個(gè)新的代理鍵并把它添加到維度里,在我們從源系統(tǒng)里獲得真正的維度行之后再把它替換更新掉。

  下面的演示編碼只在SQL Server 2008的二月份社區(qū)測(cè)試試用版中進(jìn)行過測(cè)試。

  新建一個(gè)表類型

  為了把表作為一個(gè)參數(shù)傳遞到存儲(chǔ)過程或函數(shù)中,你首先要?jiǎng)?chuàng)建一個(gè)TABLE TYPE,如下所示:

以下為引用的內(nèi)容:
  CREATETYPESourceKeyListASTABLE(
  SourceKeyNVARCHAR(50)
  )
  GO

  T-SQL編碼跟新建一個(gè)普通的表的編碼非常相似。你可以查詢當(dāng)前數(shù)據(jù)庫(kù)的sys.types來確定已創(chuàng)建的任何表類型:

以下為引用的內(nèi)容:
  SELECTname,system_type_id,user_type_id
  FROMsys.types
  WHEREis_table_type=1

  新建一個(gè)帶有表值參數(shù)的存儲(chǔ)過程

  我們要?jiǎng)?chuàng)建一個(gè)存儲(chǔ)過程,該存儲(chǔ)過程執(zhí)行代理鍵查找命令,如果源鍵不存在則添加一個(gè)推理成員。首先我們需要新建一個(gè)維度表樣例:

以下為引用的內(nèi)容:
  CREATETABLEdbo.dim_Customer(
  sk_CustomerINTIDENTITYNOTNULL,
  CustomerSourceKeyNVARCHAR(50)NOTNULL,
  CustomerNameNVARCHAR(50)NOTNULL,
  InferredMemberBITNOTNULL
  )

  代理鍵是整數(shù)類型,我們使用IDENTITY屬性來自動(dòng)分配插入行的序列號(hào)。當(dāng)我們插入一行源鍵不存在的行時(shí),InferredMember列設(shè)置為1。當(dāng)我們?cè)诰S度處理過程中從源系統(tǒng)中獲得該行后,它將替換掉推理成員行,而InferredMember列的值會(huì)變成0。

分享:如何有效防止Java程序源碼被人偷窺?
Java程序的源代碼很容易被別人偷看,只要有一個(gè)反編譯器,任何人都可以分析別人的代碼。本文討論如何在不修改原有程序的情況下,通過加密技術(shù)保護(hù)源代碼。 一、為什么要加密? 對(duì)于傳統(tǒng)的C或

來源:模板無憂//所屬分類:Mssql數(shù)據(jù)庫(kù)教程/更新時(shí)間:2008-08-22
相關(guān)Mssql數(shù)據(jù)庫(kù)教程