Sql Server中用變數名作為表名的解決方案

2021-03-31 15:31:53 字數 674 閱讀 7196

最近寫

procedure

,遇到一些問題。其中我覺得關於「用變數名作為表名」的問題較有價值,寫出和大家一起分享。請各位若有好的解決方案一定要不吝賜教。

情景:如果你在寫

procedure

時要根據特定變數的值動態建立

table

(表名是全部或部分特定變數的值)。例如:

declare @tablename char(10)

//if some statement

set @tablename='test'

你想用變數@tablename的值作為表名建立乙個新錶

,那麼用

create table @tablename (test char(8))

語句在sql server 2k

中執行就會遇到問題,解決(

接上例)://

如果表不存在則建立

if not exists (select name from sysobjects

where name =@tablenameand type = 'u')

begin

set @createtable='create table '+ @tablename+' (mynamechar(2))'

exec(@createtable)

end《完》

Oracle中的替換變數, 變數名, 變數名

替換變數 僅用於sql plus或者用於原理和sql plus相同的開發工具 臨時儲存值 利用它可以達到建立通用指令碼的目的 利用它可以達到和使用者互動,故在sql plus中又稱互動式命令 替換變數的格式式在變數名稱前加乙個 以便在執行sql命令時提示使用者輸入替換資料,然後按輸入資料執行sql命...

變數名命名

有些東西不明確寫出來就難以確定下來,個人寫 的命名風格一直沒有穩定下來,今天寫個筆記明確幾類主要的命名,希望可以逐步養成自己的程式設計風格。1.類名 型別名 t 每個單詞首字母大寫 例 t typename 2.列舉型別 反應型別的複數形式 例 enum colors 3.函式名 每個單詞首字母大寫...

變數名提公升

預解析的過程 的執行過程 程式在執行過程,會先將 讀取到記憶體中檢查,會將所有的宣告在此時進行標記。所謂的標記就是讓js直譯器直到有這個名字,後面在使用名字的時候,不會出現未定義的錯誤,這個標記就是提公升 宣告 名字的宣告,識別符號的宣告 變數名的提公升 函式的宣告 函式宣告與函式表示式有區別,函式...