使用SQL Server 2008 R2。我有一個腳本充滿下面的語句:如何避免在SQL同義詞創建中硬編碼DB名稱
create synonym [synonym_name] for [linkedServerName].[databaseName].[ext].[tableName1]
create synonym [synonym_name] for [linkedServerName].[databaseName].[ext].[tableName2]
問: 1.請問有什麼辦法可以避免4部分的命名。特別是硬編碼的數據庫名稱
有一個用於LinkedServer創建的現有腳本。這可以在創建同義詞時使用嗎?
什麼是最好的方式來創建多個表/視圖的同義詞?
declare @Server sysname, @db sysname, @Schema sysname, @Table sysname, @statement varchar(max) SELECT @Server = 'Venice', @db = 'venice1', @Schema = 'ext' EXEC('CREATE SYNONYM synonym_name1 FOR '+ @Server +'.'+ @db +'.' + @Schema + '.Table1') EXEC('CREATE SYNONYM synonym_name2 FOR '+ @Server +'.'+ @db +'.' + @Schema + '.Table2')
思考:這是唯一的辦法?
是的,因爲這就是同義詞的語法。 – Rahul
據我所知,確實是這樣做的唯一方法 –
我是這麼認爲的。謝謝。 – shaz