SQL * PLUS for Oracle有一个很好的替代品吗?

时间:2008-11-13 02:32:06

标签: sql database oracle sqlplus

我不喜欢使用SQL * PLUS作为Oracle的接口。我通常使用yasql,但自2005年以来它没有更新,可以做一些改进。快速Google search显示yasql和SQLPal。我使用的是linux,所以SQLPal不是一个选项。

那里有其他选择,还是我坚持使用我不喜欢的界面或不再维护的界面?

16 个答案:

答案 0 :(得分:26)

我认为你需要一种低开销的方法来淘汰查询,但是想要比SQL * Plus提供更多的功能?为什么不使用Oracle的SQL Developer?它是免费的。

安装,建立与数据库的新连接,然后开始输入脚本。按F5运行它(或只是您突出显示的脚本部分)。

答案 1 :(得分:12)

看看gqlplus。它在Linux上包装sql * plus,并通过添加命令历史记录,表名完成等内容使其更加用户友好。

答案 2 :(得分:10)

除了默认的SQL * Plus命令行界面之外,

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和其他一些人。 JEdi​​t是一个编辑器,它有一个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)

如果你可以支付许可费,可以从任务软件中获取蟾蜍

如果你不能,那就是sql squirrel。

答案 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)

我将自己的工具ocimlshrlwrap结合使用。

答案 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 中。