2011-01-12 61 views
2

我们希望允许用户运行为它们创建的自定义Oracle 11G SQL脚本,并附带参数提示,并获取结果的CSV摘录数据集。现在,我只是使用SQLPlus和SQLDeveloper来完成这些任务,但这些工具也允许创建自定义脚本,并且我们不希望用户尝试创建自定义查询。免费软件允许用户运行Oracle SQL脚本但不创建它们

在很多情况下,我们打算用Crystal Reports/Crystal Server满足这种需求,但我们使用CR XI,有时由于页面大小的限制很难创建WIDE提取。它对并发用户数量也有限制,有时我们可能需要更多。

有谁知道免费的工具,可以让用户执行Oracle SQL脚本并获得文件导出作为结果,但不会允许他们创建新的脚本?

注意:我们有一个Citrix环境,因此可以限制脚本文件的位置以及用户对这些文件和文件夹的访问权限。

+1

如果Citrix环境被锁定,您可以创建调用SQL查询每一个用户可执行的包装脚本(批处理文件)* Plus来运行实际的.sql脚本,所以他们不能直接访问?你打算如何提供输出?我想我可能会错过一些东西...... – 2011-01-12 19:34:42

+0

谢谢 - 这个想法和下面的一个都很好。我需要思考一下。至于访问,我们可以通过将输出保存到C盘并防止保存到服务器来提供输出,但是Justin的下面的评论是正确的,如果他们可以运行一个文本文件,他们可以从他们自己的C盘提起一个文件。请再思考一下,让你知道我想出了什么。谢谢! – user158017 2011-01-12 20:45:56

回答

2

鉴于SQL脚本仅仅是一个文本文件,我不确定我是否可以这么做,但也许我错过了一些关于如何看到类似SQL * Plus的东西来允许创建自定义脚本。如果你给我任何运行SQL脚本的工具,我总是可以打开我最喜欢的文本编辑器,编写一个SQL脚本,让你的工具运行它(假设你允许用户在你的Citrix环境中创建新文件或映射文件从他们的本地机器)。

就我个人而言,我可能会在数据库中创建一个小APEX应用程序,该应用程序会显示一个让用户选择导出的菜单。在幕后,APEX应用程序会运行任何需要的选择(我通常会在数据库中创建CLOB而不是文件系统上的文件,除非您在其中大量使用SQL * Plus格式化命令您的脚本),并允许用户下载文件(或使用一些备用文件传送机制,例如电子邮件)。

相关问题