我不喜欢使用 SQL*PLUS 作为 Oracle 的接口。我通常使用yasql,但它自 2005 年以来一直没有更新,并且可以进行一些改进。快速的Google 搜索显示 yasql 和SQLPal。我使用的是 linux,所以 SQLPal 不是一个选项。
是否有任何替代方案,或者我是否坚持使用我不喜欢的界面或不再维护的界面?
我假设您想要一种低开销的查询方法,但想要比 SQL*Plus 提供的更多功能?为什么不使用 Oracle 的SQL Developer?免费。
安装,与数据库建立新连接,然后开始输入脚本。按 F5 运行它(或只是您突出显示的部分脚本)。
看看gqlplus。它在 linux 上包装了 sql*plus,并通过添加命令历史记录、表名完成等内容使其更加用户友好。
Emacs可以提供比默认 SQL*Plus 命令行界面更强大的文本编辑特性和功能。
下面是一些关于如何使用 Emacs 作为 SQL*Plus 包装器的链接:
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 的好消息。
如果它是你想要的命令行,我建议rlwrap与 sqlplus 一起使用;它为您提供行编辑功能和命令历史记录,使 sqlplus 成为一个有点可用的工具。
你可以试试 allroundautomations 的 PL/SQL developer ,有试用版,价格比 TOAD 低很多。
问候 K
这取决于你在寻找什么。如果它是一个 GUI 查询工具,那么 Oracle 有他们的免费 SQL Developer 产品(尽管它占用了大量资源)。还有一些免费的跨数据库的。我自己喜欢 SQUirrel SQL 客户端。还有 DBVisualiser 和其他一些。JEdit 是一个具有 DBConsole 插件的编辑器,用于运行数据库查询和 DML/DDL。它们都是基于 java 的,所以在大多数地方运行。
如果您喜欢命令行,请查看 sqlpython(开发人员也确定了其他几个)
我喜欢SQL Developer。它是免费的,具有直观的 UI,可在 Windows、Mac 和 Linux 上运行。它还支持许多 sql*plus 命令并支持版本控制
TOAD 的开源版本是 TORA:tora.sourceforge.net
如果您是VIM 类型的人,那么我会研究Vorax。它基本上是一个围绕 SQL*plus 的 VIM 包装器。
如果您可以支付许可证费用,则可以从 quest software toad
sql squirrel 如果你不能。
使用过 Toad 和SQL Navigator,我喜欢 SQL Navigator 的稳定性。
我喜欢sqlsh
alias sqr='sqlsh -d DBI:Oracle:MYSERVER.COM -u USER -p PASSWORD'
我只是使用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中。
显然,Oracle 本身已经淘汰了 sql*plus 并用 SQLcl 取而代之,后者支持更现代的功能,如历史记录、格式化等:https ://www.oracle.com/database/technologies/appdev/sqlcl.html 。