有谁知道一个程序,一个实用程序或一些编程库,最好是Linux,它采用一个未格式化的SQL字符串并打印出来呢?SQL字符串格式化程序
比如我想下面
select * from users where name = 'Paul'
改成像这样
select *
from users
where
name = 'Paul'
确切的格式并不重要。 我只需要一些东西来取一个大的SQL字符串,并把它分解成更可读的东西。
有谁知道一个程序,一个实用程序或一些编程库,最好是Linux,它采用一个未格式化的SQL字符串并打印出来呢?SQL字符串格式化程序
比如我想下面
select * from users where name = 'Paul'
改成像这样
select *
from users
where
name = 'Paul'
确切的格式并不重要。 我只需要一些东西来取一个大的SQL字符串,并把它分解成更可读的东西。
此工具重新格式化SQL代码。我用它与真棒结果。它作为一个web应用程序是免费的,并且有一个可下载的版本。
不是我建议花钱(相对较大)的钱只是为了这个目的,但Toad有一个内置的功能,正是你想要的。
它包括一堆选项,允许您准确设置您的SQL格式(所有列在不同的行上)等。相当不错,但只有当你已经有蟾蜍。我知道Oracle版本这样做,但我会假设SQL Server或其他版本。
我喜欢使用http://www.dpriver.com - 这是SQL Server Management Studio的一个很好的插件。
一个宠物peeve - 为什么SSMS现在没有代码格式? – 2010-05-21 06:38:24
fsqlf(http://sourceforge.net/projects/fsqlf/)是一种用于格式化SQL的命令行或GUI程序,开放源代码。它支持有一个formatting.conf文件,它允许您在最终产品外观方面有很大的灵活性。
例子:
☺ [[email protected]:~]
$ echo "select f1, f2, fname, lName from tblName where f1 = true and fname is not null order by lName asc" | fsqlf
SELECT
f1
, f2
, fname
, lName
FROM tblName
WHERE f1=true
AND fname is not null
ORDER BY lName asc
☺ [[email protected]:~]
$ vim formatting.conf # 2 character change
☺ [[email protected]:~]
$ echo "select f1, f2, fname, lName from tblName where f1 = true and fname is not null order by lName asc" | fsqlf
SELECT
f1 ,
f2 ,
fname ,
lName
FROM tblName
WHERE f1=true
AND fname is not null
ORDER BY lName asc
☺ [[email protected]:~]
$ vim formatting.conf # 1 character change
☺ [[email protected]:~]
$ echo "select f1, f2, fname, lName from tblName where f1 = true and fname is not null order by lName asc" | fsqlf
SELECT
f1 , f2 , fname , lName
FROM tblName
WHERE f1=true
AND fname is not null
ORDER BY lName asc
☺ [[email protected]:~]
$
这是最好的答案!因为您可以使用开源工具在自己的机器上格式化SQL查询,而无需使用第三方网站或专有工具!隐藏数据保留和隐私政策! – bitek 2014-07-24 07:52:35
退房sqlparse。它是一个安装命令sqlformat
的Python模块。使用方法很简单,例如:
sqlformat --reindent --keywords upper --identifiers lower my_file.sql
我试过上述CLI的替代品,但:
create view
)。由于sqlformat我甚了解到, “REF” 是reserved keyword in SQL:2011 and SQL:2008。
当您粘贴敏感数据时,请小心此类网络应用程序。你相信它没有保存这些数据的副本吗? – 2016-10-07 08:31:29
他们也有一个免费的在线格式化器 – Guido 2016-11-14 16:17:05