我一直在寻找与C“#include”指令相当的T-SQL。我没有找到,我想知道
对于那些对我的动机充满好奇的人,我正在编写一组类似的查询,我发现外部化常量(来自枚举表),预计算(制作一些测试输入表)和参数变量(这些子集我很方便)我正在努力。
据我所知,我不能真正使用存储过程或函数(而且我不喜欢用这些来污染我的数据库)。
答案 0 :(得分:8)
您可以在SSMS中或通过sqlcmd实用程序(命令行)查看在SQLCMD模式下执行。有一个:r <file name>
命令允许您在当前执行会话中包含外部文件。因此,如果您在较大的脚本顶部附近添加:r my_init_script.sql
,则可能会实现您的目标。
请注意,这适用于SQL 2005及更高版本。
答案 1 :(得分:0)
您可以尝试使用存储过程。您将能够在每个命令中放置许多命令并使用参数来控制它们。此外,您可以根据需要串联调用不同的存储过程。如果你有一堆“常量”,你可以用一个表来存储它们,并根据需要选择它们。