我用Sqlserver2008查询时生成的Sql语句,都是自动换行的,如何设置可以不换行?
我用Sqlserver2008查询时生成的Sql语句,都是自动换行的,如何设置可以不换行?因为我想直接在表名上右键查询top1000,然后生成带成员的sql语句,直接在v...
我用Sqlserver2008查询时生成的Sql语句,都是自动换行的,如何设置可以不换行?
因为我想直接在表名上右键查询top1000,然后生成带成员的sql语句,直接在vs里使用,但是现在总是要一个一个的去删除中间的空格和换行符,因为是软件,字段太多了,每次好麻烦,不知如何设置可以自动生成一行的sql语句,我可以直接用?
我自己写过一个小软件,自动删除空格和换行符,但是总感觉也不是很方便,求高手指点。
就像是该图中自动生成的sql语句,让他变成一整行,而不是这样分行的。因为在vs里使用时必须变成一行。 展开
因为我想直接在表名上右键查询top1000,然后生成带成员的sql语句,直接在vs里使用,但是现在总是要一个一个的去删除中间的空格和换行符,因为是软件,字段太多了,每次好麻烦,不知如何设置可以自动生成一行的sql语句,我可以直接用?
我自己写过一个小软件,自动删除空格和换行符,但是总感觉也不是很方便,求高手指点。
就像是该图中自动生成的sql语句,让他变成一整行,而不是这样分行的。因为在vs里使用时必须变成一行。 展开
2个回答
展开全部
用EditPlus,
选中你要合并行的代码,执行合并行,即可(notepad++这类工具都有这个功能)
在sql里面你也可以用sql直接处理,
declare @a varchar(max)
set @a = 'SELECT TOP 1000 [id]
,[canceltype]
,[pername]
,[peroaid]
,[Itemid]
,[itemtype]
,[itemname]
,[sum]
FROM [test].[dbo].[vwbom_cancel]'
select REPLACE(@a,CHAR(13),'')
在sql里面我通常用后面的方法,在VS中(写好的Html弄成字符串)用EditPlus处理。
追问
哦,就相当于说必须用第三方工具,来替换掉里面的空格和换行符才行是吧?sql本身无法定义文本编辑器里的内容自动不生成换行符。
我之前自己写过一个工具,自动替换换行符,但是总感觉不太方便,所以希望可以自动生成的就是不带换行的,sql server是没有这个功能?
追答
应该没有吧,这个不清楚,从来没研究过,不知道你是什么应用场景,实在需要就自己写个插件呗
展开全部
这个没有办法。
你可以自己写一个存储过程,根据表名生成查询语句的功能。
create procedure get_sql (@table_name varchar(100))
as
begin
declare @sql varchar(1000)
set @sql = ' select '
select @sql = @sql + a.name + ',' from sys.all_columns a,sys.all_objects b
where a.object_id = b.object_id and b.name = @table_name
set @sql = left(@sql,LEN(@sql) - 1 )
set @sql = @sql + ' from ' + @table_name
print @sql
end
你可以自己写一个存储过程,根据表名生成查询语句的功能。
create procedure get_sql (@table_name varchar(100))
as
begin
declare @sql varchar(1000)
set @sql = ' select '
select @sql = @sql + a.name + ',' from sys.all_columns a,sys.all_objects b
where a.object_id = b.object_id and b.name = @table_name
set @sql = left(@sql,LEN(@sql) - 1 )
set @sql = @sql + ' from ' + @table_name
print @sql
end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询