加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

如何从一个变量运行一个超过8000个字符的SQL语句?

发布时间:2020-12-12 16:21:03 所属栏目:MsSql教程 来源:网络整理
导读:我可以使用以下代码进行微小的查询: DECLARE @sql VARCHAR(8000)SET @sql = 'SELECT * FROM myTable'Exec @sql 上述方法对于维护大量的代码是非常有用的,特别是当我们需要进行一次更改并将其反映到任何地方时. 我的问题是我的查询(这只是一个单一的查询),我
我可以使用以下代码进行微小的查询:
DECLARE @sql VARCHAR(8000)
SET @sql = 'SELECT * FROM myTable'
Exec @sql

上述方法对于维护大量的代码是非常有用的,特别是当我们需要进行一次更改并将其反映到任何地方时.

我的问题是我的查询(这只是一个单一的查询),我想加入到@sql变量中使用超过25个表连接,其中一些临时表变量包含复杂的操作,因此其长度超过8000个字符.

我希望使用TEXT数据类型来存储此查询,但MSDN显示一条警告消息,Microsoft计划从其下一个版本中删除Text,NText和Image数据类型.我希望我的代码在将来也可以运行.

我想把这个查询存储在一个单独的文件中,但是由于它使用了表变量和其他特定于过程的参数的连接,我怀疑这是否可行.

请告诉我一个将大型查询存储到变量中的方法,并在一个过程中执行多次.

提前致谢!

解决方法

如果您使用的是SQL Server 2008或更高版本,则可以使用VARCHAR(MAX)
DECLARE @sql VARCHAR(MAX)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读