繁体   English   中英

如何为硬编码数据库声明变量?

[英]How do I declare a variable for a hard coded database?

我的SQL中有一些硬编码的数据库值,我需要转换为变量,已在适当位置声明了它们,但是我需要将Production2更改为下面的@Source_Database_Name变量,但我不知道如何将其放置在信息模式中之后没有语法错误

IF EXISTS(SELECT *  FROM Production2.INFORMATION_SCHEMA.COLUMNS

我猜想唯一的方法是动态sql生成(不幸的是)。 从数据库引擎的角度来看,实际上有很多原因不允许用户以您想要的方式对查询进行参数化。 我最想知道的是,它将不可能验证查询的语法(无法知道您所指的是实际存在的内容)。

如果您要谈论的是“能够针对不同的数据库执行同一组SQL”,而实际上是通过代码(.NET /任何东西)执行此sql,则可以通过指定目标来实现相同的结果连接字符串中的数据库(即,通过更改设置数据库的级别-不在[sql]脚本中,而是在某些外部位置)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM