-
oracle – 如何避免合并时出现ORA-3814错误?
所属栏目:[站长百科] 日期:2021-04-01 热度:59
我有这样的代码 MERGE INTO target_table tgtUSING source_table srcon(tgt.c1=src.c1)WHEN MATCHED THENUPDATE SET tgt.c1=src.c2 我得到ORA-38104:无法更新ON子句中引用的列.我理解这个错误的原因.但是我们怎样才能重写这段代码呢?没有使用光标有没有[详细]
-
将Oracle Date与C#DateTime进行比较
所属栏目:[站长百科] 日期:2021-04-01 热度:151
我正在构建一个内联SQL查询(不需要对此进行评论,我知道它不是最好的方法,而是公司的工作方式!)我需要将Oracle DATE列与C#DateTime.Now进行比较.为了使这种比较起作用,我需要在DateTime.Now和列周围进行哪些转换? (我想比较整个DateTime对象而不仅仅是Dat[详细]
-
在Oracle =gt;用于的符号
所属栏目:[站长百科] 日期:2021-04-01 热度:141
DECLAREprice_to_update NUMBER(6,2) := 20;updated_price NUMBER(6,2) := 0;BEGINdbms_output.put_line('price before ' || price_to_update);dbms_output.put_line('updated_price before ' || updated_price);changePrice (old_price = price_to_update[详细]
-
Oracle SQL触发器用于自动设置列值
所属栏目:[站长百科] 日期:2021-04-01 热度:70
我正在写一个Oracle触发器.此触发器应自动将列“productId”的值设置为刚刚插入的行的oid. 我写的触发器是: create or replace trigger MyProduct_id_trg after insert on MyProductbegin update MyProduct set productId = inserted.oid where oid = ins[详细]
-
oracle – 连接条件下的Rownum
所属栏目:[站长百科] 日期:2021-04-01 热度:105
最近我修复了一些错误:在连接条件下有rownum. 这样的事情:在t1.id = t2.id和rownum 2上左连接t1.因此无论“左连接”如何,它都应该只返回一行. 当我进一步研究这个时,我意识到我不明白Oracle如何在“左连接”条件下评估rownum. 让我们创建两个样本表:主[详细]
-
2,oracle表只有2个字符
所属栏目:[站长百科] 日期:2021-04-01 热度:199
我试图在oracle中创建一个表,它将接受2个而且只有2个字符.我尝试使用char(2),但如果我在insert语句中输入1个字符,它将接受它.如何让oracle只接受2个精确字符的任何插入并拒绝1和3及更高的字符?我在互联网上搜索过,似乎无法找到答案. 谢谢! 克里斯托弗 解[详细]
-
Oracle:更新语句没有等待/没有失败
所属栏目:[站长百科] 日期:2021-04-01 热度:156
我在多应用程序环境中有许多竞争更新语句.根据目前的设计,死锁频繁. 如有必要,可以跳过除一个更新之外的所有更新,并在下一个时间间隔更新. 我可以将NOWAIT应用于更新声明吗?当无法获得锁定时,我可以让我的声明无声地失败吗?我可以指定尝试获取锁定的时间[详细]
-
Oracle:在用户数据中按循环连接
所属栏目:[站长百科] 日期:2021-03-31 热度:82
我理解Oracle中何时可能发生循环.理论上它说如果一条记录既是另一个节点的父节点又同时是它的子节点,那么它就可以进入一个循环. 但是我无法理解为什么我的这个特定查询会进入循环. SELECT Empno,Ename,JobFROM EmpSTART WITH Empno = 7839CONNECT BY PRIOR[详细]
-
oracle – 无法在PLSQL中使用REPLACE函数
所属栏目:[站长百科] 日期:2021-03-31 热度:181
我想知道调用 REPLACE function described here的适当方法是什么,因为我已经创建了下面的语句来测试它,但是我收到了一个错误: DECLARE templateMessage3 VARCHAR2(50);BEGIN templateMessage3 := 'Dear Mr./Madam FNAME'; replace(templateMessage3,'FNAM[详细]
-
SSIS – 使用Attunity Oracle Datasource在Oracle Query中使用参
所属栏目:[站长百科] 日期:2021-03-31 热度:158
我在SSIS中使用Attunity Oracle连接器连接到远程Oracle Server. 在我的SSIS包中,我需要连接到Oracle数据库以根据datetime参数获取数据. 我按照建议here写了一个带有参数的SELECT查询: 创建了一个包变量 将变量设置为计算为表达式true 将查询与表达式一起[详细]
-
Oracle数据库的安装步骤
所属栏目:[站长百科] 日期:2021-03-31 热度:189
以oracle 11g为例 双击oracle安装文件,进入安装界面,检测安装环境 继续,不理会 取消勾选接受安全更新,点击下一步 选择是 这里直接下一步 根据实际需求选择系统类型,下一步 选择软件安装位置、数据库文件位置, 可以默认 输入管理口令,然后下一步 如[详细]
-
Oracle数据库中的amp;1 ..意味着什么
所属栏目:[站长百科] 日期:2021-03-31 热度:155
我在一个oracle脚本中看到了这一行 SELECT COUNT(*) INTO version1 FROM 1..xxdt WHERE version = 3310; 我不明白 1 ..部分.我认为xxdt是表的名称,那么前面的 1 ..是什么东西呢? 解决方法 1提示输入用户输入的值.注意输入的值mytable如何替换下面的 1: S[详细]
-
varchar2(n)和varchar2(n char)之间的Oracle SQL区别
所属栏目:[站长百科] 日期:2021-03-31 热度:52
这里的脚本总是将varchar2列声明为varchar2(n char).我没有看到任何差异,只是好奇.谢谢! 解决方法 基于 this resource Oracle9i and above allow Varchar2 columns to be defined as a number of bytes VARCHAR2(50 BYTE) or a number of characters VARC[详细]
-
oracle – 除非我存储值,否则Sequence不会递增
所属栏目:[站长百科] 日期:2021-03-31 热度:136
在常规SQL中,每次调用时,我的序列都会递增.NEXTVAL: SELECT PDF_DATOS_TITULO_ID_SEQ.CURRVAL FROM DUAL; -- 54SELECT PDF_DATOS_TITULO_ID_SEQ.NEXTVAL FROM DUAL; -- 55SELECT PDF_DATOS_TITULO_ID_SEQ.NEXTVAL FROM DUAL; -- 56SELECT PDF_DATOS_TITUL[详细]
-
oracle – 在另一个模式上创建表
所属栏目:[站长百科] 日期:2021-03-31 热度:124
情况是user1给user2提供了权限: GRANT CREATE ANY TABLE,SELECT ANY TABLE TO user2; 登录user2后,我正在尝试创建表: CREATE TABLE user1.test(id NUMBER PRIMARY KEY); 结果是ORA-01031 – 权限不足 我可以在自己的架构上创建表,并从其他架构中选择表.[详细]
-
获取已建立的Oracle 11连接的IP地址
所属栏目:[站长百科] 日期:2021-03-31 热度:143
在开发过程中,我发现数据库有大量的生命连接: SELECT username,COUNT(*) FROM v$session GROUP BY username; 为了找到实际持有连接的人,我想获得一个IP地址列表. 在一般网页搜索和阅读official docs我构建查询: SELECT username,seconds_in_wait,machine[详细]
-
Oracle SQL – 筛选出包含具有特定值的行的分区或行组
所属栏目:[站长百科] 日期:2021-03-31 热度:114
我正在尝试解决以下问题:数据在表中组织,其中列X作为信息的外键(它是标识此表中的一组行的ID,它们属于一个捆绑包,由特定的所有者拥有)另一个表中的实体).因此,X的每个不同值都有多个与之关联的行.我想过滤掉在Q列中包含与其相关联的行的X的所有不同值,其[详细]
-
如何在一个脚本中更改Oracle模式的所有索引(10G)
所属栏目:[站长百科] 日期:2021-03-31 热度:182
我需要向Oracle模式的所有索引添加一个新列,因为数据库将开始存储历史记录并具有新的日期字段.由于现有索引是唯一的,我需要将它们全部删除并再次创建它们,但是新索引包含新列.如果使用系统视图的单列基于所有索引,这将是相当容易的: select 'CREATE INDEX[详细]
-
oracle – 使用sysdate的to_date函数
所属栏目:[站长百科] 日期:2021-03-31 热度:151
select TO_CHAR(to_date(sysdate,'DD-MON-YYYY'),'DAY') FROM DUAL; 当我运行此查询时,输出为:SUNDAY.但我们今天知道的是星期二(1-1-2013). 和 然后将查询更改为 select TO_CHAR(to_date('01-JAN-2013','DAY') FROM DUAL; 答案是:星期二. 然后将查询更改[详细]
-
oracle11g – Oracle不可用ora-01034
所属栏目:[站长百科] 日期:2021-03-31 热度:164
我正在尝试创建与oracle sqlplus连接.当我登录时: User: sys as sysdbaPass: 它说连接到空闲实例. 当我尝试创建一个表时,它会给出错误 ORA-01034: Oracle not availableProcess ID: 0Session ID: 0 Serial number: 0 为什么不创建表? 解决方法 首先 –[详细]
-
oracle – 如何在动态SQL中更改序列?
所属栏目:[站长百科] 日期:2021-03-30 热度:83
我正在尝试创建一个脚本来将数据从一个数据库迁移到另一个数据库.我目前无法做的一件事是将序列的nextval设置为另一个DB中序列的nextval. 我从user_sequences中获得了值的差异,并生成了以下动态SQL语句: execute immediate 'alter sequence myseq increme[详细]
-
在Oracle中解决“无法在查询中执行DML”错误
所属栏目:[站长百科] 日期:2021-03-30 热度:97
我已经创建了常规功能.它已成功创建.但是当我运行它时 select reg('awlad','01968688680','545466455','12345') from dual 它给了我这个错误: ORA-14551: cannot perform a DML operation inside a query 我怎么解决这个问题? CREATE OR REPLACE FUNCTIO[详细]
-
将SPATIAL数据从Oracle迁移到Postgresql
所属栏目:[站长百科] 日期:2021-03-30 热度:104
我正在尽我所能将空间数据库从Oracle迁移到 Postgresql并且失败了. 我已经尝试了许多不同的途径,你可以从我之前的问题中看到,这里没有任何工作.有人可以告诉我一个相对无痛的方式这样做,因为我现在无能为力. 我尝试过使用第三方软件,例如SwisSQL,但这种方[详细]
-
从文本文件加载超过十亿行到Oracle的快速方法
所属栏目:[站长百科] 日期:2021-03-30 热度:165
我有大约20个数据的文本文件,所有数据都采用相同的格式,并且所有制表符都是分隔的.这些文件每个都有数百兆字节,而且我预计这些文件大约有12亿行数据. 我的问题 – 将这些加载到Oracle表中的最佳(也是最快)方法是什么?我试图通过TOAD中的内置导入功能加载[详细]
-
Oracle’NOT LIKE’表达式不会返回NULL吗?
所属栏目:[站长百科] 日期:2021-03-30 热度:184
我尝试使用以下查询查询表: select * from name where firstname NOT LIKE 'PETER%' 它不返回firstname为null的任何记录.这是一些错误还是它是怎么回事?我来自SQL Server背景,并在这里与许多事情混淆. 解决方法 NULL与LIKE不匹配.您必须使用OR firstname[详细]

浙公网安备 33038102330481号