自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SQL Server 2005中synonyms的正確用法

數(shù)據(jù)庫(kù) SQL Server
以下的文章主要是淺談SQL Server 2005數(shù)據(jù)庫(kù)中synonyms的具體使用以及對(duì)其在實(shí)際應(yīng)用中的優(yōu)點(diǎn)與缺點(diǎn),以下就是文章的主要內(nèi)容。

以下的文章主要是對(duì)SQL Server 2005數(shù)據(jù)庫(kù)中synonyms的具體使用以及對(duì)其在實(shí)際應(yīng)用中的優(yōu)點(diǎn)與缺點(diǎn)的介紹,在世紀(jì)工作中我所面臨的問(wèn)題是,在product數(shù)據(jù)庫(kù)中把創(chuàng)建的表進(jìn)行歸檔,因?yàn)殡S著數(shù)據(jù)庫(kù)的增長(zhǎng),現(xiàn)在需要把它們移走。

同時(shí),這些歸檔的表被幾項(xiàng)工作使用,而且它還在應(yīng)用程序的代碼中被調(diào)用。這樣移動(dòng)它們就是一個(gè)非常復(fù)雜

 

在我的新工作中,我面臨著一個(gè)問(wèn)題,在product數(shù)據(jù)庫(kù)中把創(chuàng)建的表進(jìn)行歸檔,因?yàn)殡S著數(shù)據(jù)庫(kù)的增長(zhǎng),現(xiàn)在需要把它們移走。同時(shí),這些歸檔的表被幾項(xiàng)工作使用,而且它還在應(yīng)用程序的代碼中被調(diào)用。這樣移動(dòng)它們就是一個(gè)非常復(fù)雜的過(guò)程。我希望能找到一種方法,盡可能減輕開(kāi)發(fā)人員必須得完成的工作量,因?yàn)樗麄兊臅r(shí)間非常有限。請(qǐng)問(wèn)在有限時(shí)間內(nèi)按要求把表進(jìn)行歸檔的***方法?

 

專家解答

在SQL Server 2005中有一個(gè)特性,能解決這一問(wèn)題,并且能提供進(jìn)一步地優(yōu)化和工具設(shè)備, 這個(gè)特征就是SQL Server 2005中的同義詞(SYNONYMs)。同義詞(SYNONYM)是SQL Server 2005中新特性。它是一種在已有的或潛在的新對(duì)象中給予的別名。它只是一個(gè)指針或者參數(shù),所以它不被當(dāng)作是一個(gè)對(duì)象。

為了創(chuàng)造一個(gè)同義詞(SYNONYM),您需要有創(chuàng)造同義詞(SYNONYM)的權(quán)限。 如果您是系統(tǒng)管理員或db_owner,那么您將擁有這些權(quán)限并且可以授予這個(gè)權(quán)限給其他用戶。此外,如果你需要?jiǎng)?chuàng)建一個(gè)跨越數(shù)據(jù)庫(kù)的同義詞,那么需要另一數(shù)據(jù)庫(kù)的權(quán)限。

下面是一個(gè)例子,用來(lái)在一個(gè)數(shù)據(jù)庫(kù)中創(chuàng)建同義詞(SYNONYM),而在數(shù)據(jù)庫(kù)中引用另一個(gè)對(duì)象:

  1. USE AdventureWorks   
  2. GO   
  3. CREATE SYNONYM MySyn FOR Production.Location   
  4. GO  

要檢查這些工作,您可以在SYNONYM的使用過(guò)程中使用下面的查詢語(yǔ)句:

  1. SELECT * From MySyn  

下面這又是一個(gè)的例子,它是在一個(gè)數(shù)據(jù)庫(kù)中創(chuàng)建同義詞(SYNONYM),而在另外一個(gè)數(shù)據(jù)庫(kù)中引用這個(gè)對(duì)象:

  1. USE master   
  2. GO   
  3. CREATE SYNONYM dbo.MySyn FOR AdventureWorks.Production.Location   
  4. GO  

為了獲得同義詞(SYNONYMs)中所有變化的數(shù)據(jù),可以使用下面的命令:

  1. SELECT * FROM sysobjects   
  2. WHERE xtype = 'SN'   
  3. ORDER BY NAME  

刪除同義詞(SYNONYM)可以使用下面的命令:

  1. USE AdventureWorks;   
  2. GO   
  3. DROP SYNONYM MySyn   
  4. GO  

同義詞(SYNONYM)非常有用,SQL Server 2005中使用synonyms的優(yōu)缺點(diǎn)可以創(chuàng)造以下這些:

視圖

 

匯編的存儲(chǔ)過(guò)程,表值函數(shù),族聚

 

SQL標(biāo)量函數(shù)

 

SQL存儲(chǔ)過(guò)程

 

SQL表值函數(shù)

 

內(nèi)嵌的SQL表值函數(shù)

 

本地和全局的臨時(shí)表

 

復(fù)制篩選過(guò)程

 

擴(kuò)展存儲(chǔ)過(guò)程

 

SQL Server 2005中使用synonyms的優(yōu)點(diǎn)

 

同義詞(SYNONYM)提供一個(gè)抽象層以上引用的對(duì)象

允許更改復(fù)雜(多部分)和冗長(zhǎng)的名稱,用一個(gè)簡(jiǎn)化的別名作為在同一臺(tái)服務(wù)器上的寄存對(duì)象。

 

能靈活改變對(duì)象的位置而無(wú)需變動(dòng)現(xiàn)有的程序代碼。

 

在同一個(gè)數(shù)據(jù)庫(kù)中創(chuàng)建SYNONYMs,來(lái)為老的應(yīng)用程序提供向后兼容性,以避免刪除或重命名對(duì)象。

 

如果你給了前端查詢工具(例如電子數(shù)據(jù)表和Access鏈接表)到這些數(shù)據(jù)表的直接鏈接,那么SYNONYMs是很有用的。

 

SQL Server 2005中使用synonyms的缺點(diǎn)

 

同義詞(SYNONYMs)綁定到引用的對(duì)象是非常松散的。因此,您在刪除被引用的任何其他數(shù)據(jù)庫(kù)對(duì)象的同義詞的時(shí)候,沒(méi)有得到任何的提示或者警告。

同義詞是不允許鏈接的。這就說(shuō)明你不能在一個(gè)同義詞中創(chuàng)建另一個(gè)同義詞。

 

會(huì)消耗更多的對(duì)象名稱,就像如果同義詞存在了,就不能再創(chuàng)建一個(gè)與同義詞名稱一樣的表。

 

同義詞創(chuàng)建了對(duì)象后,在運(yùn)行的時(shí)候就開(kāi)始被檢查,它并不是檢查創(chuàng)建的時(shí)間,也就是說(shuō)如果您作出任何相關(guān)的錯(cuò)誤,例如拼寫錯(cuò)誤,同義詞就會(huì)被創(chuàng)建,當(dāng)你訪問(wèn)這個(gè)對(duì)象時(shí)你就會(huì)得到一個(gè)錯(cuò)誤信息。

 

同義詞不能引用在一個(gè)DDL聲明中。

 

總結(jié)

 

你可以在現(xiàn)有的數(shù)據(jù)庫(kù)或其它數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)同義詞做為參考對(duì)象。在同義詞使用的時(shí)候,定義一個(gè)簡(jiǎn)單的別名也許是***的選擇,這樣就不需要通過(guò)大量的移動(dòng)或者重命名對(duì)象做重復(fù)工作。

【編輯推薦】

  1. SQL Server 數(shù)據(jù)導(dǎo)入的實(shí)際行為規(guī)范描述
  2. SQL Server 2000的安全策略的正確打造
  3. MS SQL Server數(shù)據(jù)庫(kù)快速獲得表的記錄總數(shù)步驟
  4. SQL Server DateTime數(shù)據(jù)類型的另類解讀
  5. SQL Server identity列,美中不足之處

 

責(zé)任編輯:佚名 來(lái)源: 56cto
相關(guān)推薦

2010-07-13 17:02:18

SQL Server

2010-07-22 14:31:13

Microsoft S

2010-07-14 15:11:18

2010-07-26 17:43:34

SQL Server

2010-07-13 08:30:57

SQL Server

2010-06-28 15:06:04

SQL Server

2010-07-22 17:14:37

2010-06-28 09:28:32

SQL Server

2010-06-28 10:13:17

SQL Server

2010-07-05 10:15:40

SQL Server

2010-10-21 15:13:20

SQL Server系

2011-09-01 16:13:37

Visual StudSQL Server 存儲(chǔ)過(guò)程

2011-04-02 16:20:21

SQL SERVER 同步復(fù)制

2010-07-20 15:24:27

MS SQL Serv

2010-07-13 09:12:56

SQL Server

2011-05-10 16:34:03

MasterSQL Server

2010-06-28 11:22:14

MS SQL Serv

2010-07-16 10:35:19

SQL Server

2011-02-28 17:41:20

SQL Server

2010-06-17 15:09:49

SQL Server
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)