首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

问个容易的SQL

2011-12-14 
问个简单的SQL大致形式declare@sqlvarchar(100)set@sql11select*fromtable1where@sql出错因为句子比较长

问个简单的SQL
大致形式
declare   @sql   varchar(100)
set   @sql   =   '   1=1 '
select   *   from   table1   where     @sql
出错
因为句子比较长,写起来麻烦,不太可能用这种形式
declare   @sql   varchar(100)
declare   @sql1   varchar(1000)
set   @sql   =   '   1=1 '
set   @sql1   =   'select   *   from   table1   where   '+   @sql
exec(@sql1)
有没有其它方法???

[解决办法]
如果要在数据库这边做,拼SQL的话,最大只有varchar(8000)
[解决办法]
这样的 执行 只能用字符串 拼接
[解决办法]
如果太长了,可以先把一部分建立一些临时表,最后在关联
[解决办法]
如果是拼只能是用动态执行Sql语句了,比如用sp_executeSql.

热点排行