SQL语法高亮

4
例如,我有一个SQL语句:
 insert into Table(id, name) values (1, 'x');

当鼠标悬停在列名(如 id)上时,我希望其对应的值 1 可以被突出显示。
是否有工具或插件可以实现这个功能?
我不想自己编写工具,而是使用已有的工具,如果有的话。
编辑:我添加了 Eclipse 和 Visual Studio 标签,因为我同时使用这两个软件,也许有相应的插件。

@Spooks 有人必须编写它,但我觉得它应该已经存在。;) - IAdapter
@IAdapter 我真的希望有人能为微软服务器开发一个插件,用于大量插入数据,这将非常有帮助。 - Spooks
@Spooks,我希望我能激发一些惊人的高光插件程序员,也许有人会做出来 :) 这看起来像是很多数学编程,我不喜欢那样 :( - IAdapter
建议在 http://connect.microsoft.com/sqlserver 上提出。 - Matthew Burr
@Matthew Burr 我不使用SQL Server,也不信任建议。它们更聪明,在深处知道这是一个坏主意(对于它们来说实现也是不可能的)。 - IAdapter
1个回答

3

我不知道有什么工具可以做到这一点。对于你的简单示例,我怀疑你甚至不需要它。但是,当你有很多列时(我猜这才是问题的真正原因),你确实需要它,这是我的处理方法:

--format your large insert statements like this
insert YourTableName
        (col1      , col2      , col3   , col4     , col5
        ,col6      , col7      , col8   , col9     , col10
        ,col11     , col12     , col13  , col14    , col15
        ,col16     , col17)
    VALUES
        (1         , '2'       , 3.0    , 4        , 'five'
        ,6         , 'seven'   , 8      , @nine    , 'ten'
        ,11.0      , 'twelve'  , 13     , @_14     , 15
        ,'sixteen' , 17)

相比于最小格式化的插入,您可以更好地将值与列匹配:

insert YourTableName (col1,col2,col3,col4,col5,col6,col7,col8,col9,col10,col11,col12, col13,col14, col15,col16,col17) VALUES (1, '2',3.0,4,'five',6,'seven',8,@nine, 'ten',11.0,'twelve',13,@_14,15,'sixteen',17)

这种格式仅适用于生产代码,而不是一次性插入。我有一个简单的存储过程,输出给定表的列。在文本模式下运行,我可以使用SSMS的矩形选择剪切/粘贴能力快速格式化列列表部分。我在值列表中复制该操作,并使用值覆盖列名。当值也来自查询时,这种方法效果很好。

是的,你说得对。我只是不想粘贴真正的代码。使用格式化程序是个好主意。当浏览 SQL 转储时,我需要它。 - IAdapter
说得好。SQL查询的格式化是我会争论不休的事情。 - Abe Miessler
@Abe Miessler 但 SQL 转储文件是由一种工具生成的,而这个工具你懂的。 - IAdapter

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接