鉴于这张表
create table FOO
(
ID number(19) primary key,
DATE1 DATE default sysdate,
DATE2 DATE
);
Run Code Online (Sandbox Code Playgroud)
当我插入一行时,DATE1 用 sysdate 初始化,然后设置为 null,然后复制到 DATE2:
insert into FOO (ID) VALUES (1);
update FOO set DATE1 = null where id = 1;
update FOO set DATE2 = DATE1 where id = 1;
select DATE2 from FOO;
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,DATE2 最终为空。
但是如果我分两步创建表:
create table FOO
(
ID number(19) primary key
);
alter table FOO
add DATE1 DATE default sysdate
add DATE2 DATE;
Run Code Online (Sandbox Code Playgroud)
并运行相同的插入和更新,DATE2 最终成为 DATE1 的原始 sysdate …
在将 Windows 上的本地 Oracle DB 从 11g 迁移到 19c 时,在运行 时setup.exe,我得到了:
[INS-30014] Unable to check whether the location specified is on CFS
我们的一个数据库升级到 Oracle 19c,现在我的应用程序无法连接到数据库
我收到以下错误。
HHH000400: Using dialect: org.hibernate.dialect.Oracle12cDialect
HHH000342: Could not obtain connection to query metadata : Unable to determine Dialect to use [name=Oracle, majorVersion=19]; user must register resolver or explicitly set 'hibernate.dialect'
Run Code Online (Sandbox Code Playgroud)
我搜索了 oracle 19 的方言,但找不到任何 .
oracle 19 是否有可用的方言?
我想在 macbook m1 上安装 Oracle Database Express,但它只支持 Linux 和 Windows,我下载了 Sql Developer,但无法下载 Oracle 数据库。我尝试使用 docker 和 OrcaleVM 安装,但两次尝试均不成功。我也尝试过playonmac,但它只支持x86软件,当我尝试运行x64软件时会崩溃。在M1芯片的MacBook上安装oracle Database Express应该怎么做?
我在跑步Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.8.0.0.0。
考虑以下示例:
create table tab_a as
select 1 as id from dual
union all select 2 as id from dual
union all select 3 as id from dual
;
create table tab_b as
select 1 as id, 'b1' as val, 'bbb1' as val_b from dual
union all select 2 as id, 'b2' as val, 'bbb2' as val_b from dual
;
create table tab_c as
select 1 as id, …Run Code Online (Sandbox Code Playgroud) 尝试为 docker 创建本地存储库时出现只读文件系统错误。[1] 我在 Macbook Air M1(Apple 芯片组)上使用了这个已安装的 lima [2]
chown: changing ownership of 'oracle-19c/.DS_Store': Read-only file system
chown: changing ownership of 'oracle-19c/oradata': Read-only file system
chown: changing ownership of 'oracle-19c/': Read-only file system
Run Code Online (Sandbox Code Playgroud)
任何人都知道如何解决这个问题。我通过选择相关文件夹来更改使用“getInfor”选项的读写权限。
[1] https://registry.hub.docker.com/r/doctorkirk/oracle-19c [2] https://github.com/lima-vm/lima
XMLType使用该数据类型时,Oracle 的 SQL Developer 不显示 XML 列的内容。第一行显示正常(如果勾选了首选项 > 数据库 > 高级 > 在网格中显示 XML 值),但是一旦双击黄色小铅笔,“查看值”窗口就会保持空白。奇怪的是,如果您将 XML 存储在 clob 中,它会起作用。
CREATE TABLE t (x XMLTYPE, c CLOB);
INSERT INTO t VALUES (XMLTYPE('<x/>'), '<x/>');
COMMIT;
SELECT * FROM t;
Run Code Online (Sandbox Code Playgroud)
经过大量的互联网搜索,我找到了thatJeffSmith 的一篇帖子,说这是一个已知的错误,很快就会修复。是的,它从 19.1 版开始再次运行。但是,在工作中,我们有一段时间会使用 18.2 版。那么,18 中有解决方法吗?
Version XML View Value
17.3.0.271 ok
17.4.0.355 ok
18.1.0.095 empty
18.2.0.183 empty
19.1.0.094 ok
19.2.1.247 ok
19.4.0.354 ok (but needs modern JDK)
Run Code Online (Sandbox Code Playgroud)
这是它在 19.1 中的样子:
其次,我找不到 SQL Developer 的错误列表、修复的错误列表或旧的发行说明。目前,Oracle 的下载页面仅列出了最新的三个版本 19.1、19.2 和 19.4,因此无法确定此错误何时修复。
是否有像三元运算符或函数这样的简单 Oracle 语法?
这些工作:
with
function qry(v in varchar2) return varchar2 is
begin
return owa_util.ite(v like ('%' || lower('something') || '%'),'Y','N');
end;
select * from my_table where qry(my_col) = 'Y'
Run Code Online (Sandbox Code Playgroud)
with
function qry(v in varchar2) return varchar2 is
begin
return case when v like('%' || lower('something') || '%') then 'Y' else 'N' end;
end;
select * from my_table where qry(my_col) = 'Y'
Run Code Online (Sandbox Code Playgroud)
如果有更简单、更短的语法我想知道。
我认为oracle sql中有一个函数extract(quarter from date )来获取给定日期的季度。然而,这里的Oracle SQL 19c 文档不再显示 的存在quarter。
我什至尝试运行代码 -
select extract(quarter from to_date('15/09/2021','DD/MM/YYYY')) as Q from dual;
Run Code Online (Sandbox Code Playgroud)
预期结果是——
+---+
| Q|
+---+
| 3|
+---+
Run Code Online (Sandbox Code Playgroud)
相反,它给出了一个错误
ORA-00907 missing right parenthesis
Run Code Online (Sandbox Code Playgroud)
quarter尽管当被monthor替换时它运行良好year。quarterOracle SQL 19c 中当前获取给定日期的方法是什么?
因此,我们将 Oracle 12.2 迁移到 19c,连接到 Oracle 服务的 Asp.Net 应用程序现在失败,并出现以下错误:Oracle 12560:TNS 协议适配器错误
首先,我想确认 .net dll System.Data.OracleClient 是否适用于 Oracle 19c,或者我们是否正在考虑强制迁移到 ODP.Net?