我不喜欢使用SQL * PLUS作为Oracle的接口。我通常使用yasql,但自2005年以来它没有更新,可以做一些改进。快速Google search显示yasql和SQLPal。我使用的是linux,所以SQLPal不是一个选项。
那里有其他选择,还是我坚持使用我不喜欢的界面或不再维护的界面?
答案 0 :(得分:26)
我认为你需要一种低开销的方法来淘汰查询,但是想要比SQL * Plus提供更多的功能?为什么不使用Oracle的SQL Developer?它是免费的。
安装,建立与数据库的新连接,然后开始输入脚本。按F5运行它(或只是您突出显示的脚本部分)。
答案 1 :(得分:12)
看看gqlplus。它在Linux上包装sql * plus,并通过添加命令历史记录,表名完成等内容使其更加用户友好。
答案 2 :(得分:10)
Emacs可以提供更强大的文本编辑功能和功能。
以下是有关如何使用Emacs作为SQL * Plus包装器的一些链接:
答案 3 :(得分:9)
TOAD非常昂贵,但您可以从Quest网站下载90天的试用版,看看它是否具有您想要的功能集(不要被“免费软件”标题所迷惑 - 它只能免费使用90天,然后它到期,这绝对使它成为共享软件):
http://www.toadworld.com/Freeware/ToadforOracleFreeware/tabid/558/Default.aspx
另一个选项是我在CodeProject上看到的工具:
http://www.codeproject.com/KB/database/OQuery.aspx
它在.NET中,所以你必须看看它是否在Mono上编译,但它可能值得一试。我没有使用过任何一种工具(Toad或者这个),因为我是一个SQL Server人,但我听说过Toad的好消息。
答案 4 :(得分:8)
如果是你想要的命令行,我建议rlwrap使用sqlplus;它为您提供行编辑功能和命令历史记录,使sqlplus成为一种有用的工具。
答案 5 :(得分:6)
您可以尝试allroundautomations的PL / SQL开发人员,有可用的试用版,价格远低于TOAD。
此致 ķ
答案 6 :(得分:4)
这取决于你在寻找什么。 如果它是一个GUI查询工具,那么Oracle就有他们免费的SQL Developer产品(虽然它有很大的足迹)。还有一些免费的跨数据库。我自己喜欢SQUirrel SQL客户端。还有DBVisualiser和其他一些人。 JEdit是一个编辑器,它有一个DBConsole插件,用于运行数据库查询和DML / DDL。 它们都是基于java的,因此可以运行大多数地方。
如果您喜欢命令行,请查看sqlpython(开发人员已确定其他几个too)
答案 7 :(得分:3)
我喜欢SQL Developer。它是免费的,具有直观的用户界面,可在Windows,Mac和Linux上运行。它还支持许多sql * plus命令并支持版本控制
答案 8 :(得分:3)
看看Senora。这个工具是用Perl编写的,因此是跨平台的。 Senora也是免费的,可扩展的,并打算成为您的主要Oracle shell。您可以通过提供自己的插件轻松扩展Senora。 Senora尝试提供比sqlplus更友好的输出格式。列往往只是真正需要的广泛。
另一个有趣的选择是SQLcl。它提供了内联编辑,语句完成,命令调用,DBA内容(例如启动,关闭)以及支持您以前编写的SQL * Plus脚本。
答案 9 :(得分:2)
如果你是 VIM类型的人那么我会调查Vorax。它基本上是围绕SQL * plus的VIM包装器。
答案 10 :(得分:1)
答案 11 :(得分:1)
TOAD的开源版本是TORA: tora.sourceforge.net
答案 12 :(得分:1)
我喜欢sqlsh
alias sqr='sqlsh -d DBI:Oracle:MYSERVER.COM -u USER -p PASSWORD'
答案 13 :(得分:0)
同时使用过Toad& SQL Navigator ,我喜欢SQL Navigator的稳定性。
答案 14 :(得分:0)
答案 15 :(得分:0)
我只是使用socat向sqlplus添加readline支持。历史记录和有效的退格键实际上使sqlplus变成了一个相当不错的工具。
在我的 .bashrc 中:
function sqlplus {
socat READLINE,history=$HOME/.sqlplus_history EXEC:"$ORACLE_HOME/bin/sqlplus $(echo $@ | sed 's/\([\:]\)/\\\1/g')",pty,setsid,ctty
status=$?
}
您可能会看到使用别名 sqlplus替代socat的替代方法,但是您会很快发现这样做会阻止您使用各种命令行选项调用sqlplus。
注意:请确保将 $ HOME / .sqlplus_history 权限设置为0600。键入的密码最终出现在历史记录文件中。您还可以考虑将cat /dev/null > $HOME/.sqlplus_history
添加到您的 .bash_logout 中。