我正在使用多个 .sql 调用的 sql 文件部署 pl/sql 代码@@file。如果包出现编译错误,脚本会继续执行到最后。
有没有办法停止每个编译错误?
我试过了,WHENEVER SQLERROR EXIT SQL.SQLCODE但脚本仍在继续。
我注意到在运行 SQL 查询时,第二次比第一次更快。所以我的问题是,在 Oracle SQL Developer 中,您在哪里可以看到解释这种行为的统计数据?
我使用 Oracle SQL Developer 4 同时连接到多个数据库,有时使用与连接属性中保存的不同的凭据。因此,我在主窗口中有多个标有数据库名称的选项卡,但我还希望指示我连接的是哪个帐户(在选项卡标签/名称中似乎很自然)。有任何选项设置可以实现此目的吗?可能我找错了地方,或者可以做一些查询来检查当前使用的凭据?
假设您在 SQL Developer 中并想检查当前用户会话(即您的连接)是否有未提交的更改。
如果您退出 SQL Developer,它会进行这样的检查并显示一个对话框如何继续。我想在不退出的情况下检查它 - 例如通过执行特殊的 SQL 语句或 SQL Developer 操作。
理想情况下,如果可以配置 SQL Developer,以便在当前会话是“脏的”(即有未提交的更改)时直观地指示它,那就太好了——例如,通过在工作表周围显示红色边距。
我的团队使用 Oracle 11 和 SQL Developer。我最近一直在很大程度上依赖于解释计划来尝试确定解决各种问题的最有效方法。最近,一位同事指出,解释计划并不总是准确反映数据库中实际发生的情况,自动跟踪是更好的指示,因为查询实际上是针对数据运行的。
测试查询,我得到以下结果
_________________________________
| Method | Cost |
|--------------------|----------|
| Query A Explain | 306,188 |
| Query A Autotrace | 399,131 |
| Query B Explain | 99,226 |
| Query B Autotrace | 137,661 |
|____________________|__________|
Run Code Online (Sandbox Code Playgroud)
使用自动跟踪时,查询 A 的成本增加了 30%,查询 B 的成本增加了近 40%。显然,我应该在这两种情况下都使用查询 b,但我不明白是什么导致它们不同。
在 Oracle SQL Developer 中,如何创建或更新过程并将架构名称设为变量:
define my_schema_name = 'schema_1';
CREATE OR REPLACE PROCEDURE my_schema_name.updateDBUSER(
p_userid IN DBUSER.USER_ID%TYPE,
p_username IN DBUSER.USERNAME%TYPE)
IS
BEGIN
UPDATE DBUSER SET USERNAME = p_username where USER_ID = p_userid;
COMMIT;
END;
Run Code Online (Sandbox Code Playgroud) 是否可以将 Oracle SQL Developer v 4.03 配置为在我输入名称(如 PL\SQL Developer)时自动显示表?

第二个问题:如何使输出网格看起来像 PL/SQL Developer?是否可以?

是否可以更改斑马输出中的默认颜色?我已启用“斑马纹”
Preferences->Database->Worksheet->Grid in checker board or Zebra pattern
Run Code Online (Sandbox Code Playgroud)
...但默认颜色是如此...丑陋。更改默认NULL值(更改字段颜色并更改(null)为NULL)会很棒。你能添加选项来设置用户的颜色为 NULL 和斑马色吗?如果我想使用品红色或青色怎么办?
当您在 Oracle 中创建对象并且未指定架构(对象前缀)时,该默认架构是否有名称?我在 Oracle SQL Developer 中看到,当没有指定前缀时,新创建的对象会出现在根对象节点中,而不是模式对象节点中。
在模式 X 下创建表:
X.table_1
在默认架构下创建表:
表格1
在 Oracle SQL Developer 中导出为 CSV 时,空值将替换为“”。我希望它们被导出为字符串null。这可以在任何地方配置吗?
希望的例子:
"STARTDATE", "ENDDATE"
"2017-03-16 00:00:00", null
Run Code Online (Sandbox Code Playgroud)
代替:
"STARTDATE", "ENDDATE"
"2017-03-16 00:00:00", ""
Run Code Online (Sandbox Code Playgroud)
导出是通过运行查询来执行的,右键单击网格中显示的数据并选择“导出...”
我有一张像下面这样的表
ID created sent type
-----------------------------------------------------
0001463583000051783 31-JUL-12 1 270
0081289563000051788 01-AUG-12 1 270
0081289563000051792 01-AUG-12 1 270
0081289563000051791 01-AUG-12 1 270
0081289563000051806 01-AUG-12 1 270
0001421999000051824 06-AUG-12 1 270
0001421999000051826 06-AUG-12 1 270
0001464485000051828 06-AUG-12 1 270
0082162128000051862 09-AUG-12 2 278
0082162128000051861 09-AUG-12 2 278
0022409222082910259 09-AUG-12 3 278
Run Code Online (Sandbox Code Playgroud)
我想有以下输出
created Count
---------------------
31-JUL-12 1
01-AUG-12 4
06-AUG-12 3
09-AUG-12 3
Run Code Online (Sandbox Code Playgroud)
在 Oracle 10g 上使用 SQL Developer 实现这一目标有多难?
我尝试了几个查询来生成这样一个表,最后它没有按日期对计数进行分组,当我们每天平均 5000-10000 笔交易时,它只是给我一个“1”的计数。我可能把它复杂化了。但我想要一些简单的东西,我可以在一个日期范围内每天提取交易量。
我使用 Oracle 11.2 作为我的应用程序的数据库。为此,我应该将我的数据(大约 100m 记录)导入到这个数据库中。为此,我使用了 SQL Developer。
不幸的是,在导入过程中,我的系统崩溃并迫使我重新启动系统。系统启动后,与 Oracle 相关的一切都很奇怪:
你能告诉我发生了什么,我该如何解决?
PS:从崩溃时间过去 24 小时后,性能变得更好,但仍远低于崩溃前。
我正在使用 SQL Developer,现在可以使用,SELECT但无法查看列表中的这些表。为了查看表格,我需要做一些配置吗?用户具有选择所有表的权限。
我在我自己的用户下扩展树,而不是在拥有表的用户下。
我需要一个适用于 11.2.0.4 或更低版本驱动程序的版本。
在 Oracle 站点中,有当前版本 20.4.1和前一版本的链接。您单击的每个先前版本都有一个指向前一个版本的链接,但此链已断开。
20.4.1 指向 20.4,再指向 20.2,再指向 19.4。最后一个链接已损坏。
由于某种原因,谷歌能够找到一个被遗忘的3.2.2 版本链接。
你们知道有存档版本的存储库吗?
oracle ×9
count ×1
csv ×1
export ×1
group-by ×1
oracle-10g ×1
oracle-11g ×1
performance ×1
plsql ×1
schema ×1
session ×1
sqlplus ×1