今天,我讓我的數據庫名稱類似的:如何使用T-SQL查詢變量
set @databaseNameTXT = 'NewStat1DB';
然後我插入數據到右表這樣的:
IF @databaseNameTXT = 'NewStat1DB'
BEGIN
INSERT INTO [NewStat1DB] (wStat_id) values(@wStat_id)
END
IF @databaseNameTXT = 'NewStat2DB'
BEGIN
INSERT INTO [NewStat2DB] (wStat_id) values(@wStat_id)
END
哪有我用的變量T-SQL內部並運行它,這樣的:
INSERT INTO [@databaseNameTXT](wStat_id)值(@wStat_id)
謝謝
這是容易出現SQL注入,不應該被使用。 – Tomalak
如果您嘗試動態地發送表名稱,那麼接近100%的機會會導致設計不佳。 – HLGEM
SQL注入攻擊不是每個用例中的一個因素。如果他沒有從可公開獲取的數據中獲取數據,那並不重要。例如,他可以使用SQL服務器代理運行的腳本或手動運行的腳本進行後端更新。 – Jim