问题标签 [ora-01461]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - 使用 CLOB 绑定通过 JDBC 执行 sql 语句
我有以下查询(列日志的类型为 CLOB):
当使用 setAsciiStream 方法将超过 4000 个字符的值放入日志列时,上面的查询可以正常工作。
但是我不想替换该值,而是想附加它,因此我的查询如下所示:
上面的查询不再起作用,我收到以下错误:
xml - 将超过 4000 个字符的 XML 插入 Oracle XMLTYPE 列
我有一个 oracle 表,其中有一列来自“ SYS.XMLTYPE
”类型的列和一个正在执行插入的存储过程:
(精简版):
我从我的 C# 代码中调用这个 sp,类型为“ OracleType.LongVarChar
”。
现在的问题:如果 xml 的字符少于 4000 个,一切正常,但是通过使用超过 4000 个字符的 xml,我得到以下错误:
我该如何处理?谢谢 4 个答案
java - 春天的oracle clob插入问题
我想将 CLOB 值插入到我的 Oracle 数据库中,这就是我可以做的。插入操作“ORA-01461:只能绑定 LONG 值以插入 LONG 列”时出现此异常。有人能告诉我我该怎么做吗?谢谢。
sql - SQL 加载程序错误 350
在过去的几个小时里,我试图将一个 .xml 数据文件加载到 oracle 中,但没有成功。
======这是我的 .ctl 文件====
但是,我每隔一行都有以下错误:
文章表如下:
perl - 将 perl 中的多字节字符插入 oracle 时遇到 ORA-01461
我有一个 perl 脚本,它将文本文件中的记录插入到我们的数据库中。每当记录有像“RODR_Í_GUEZ”这样的多字节字符时。我收到错误 ORA-01461,但是我距离从 varchar2 切换到 long 的 4000 个字符还差得很远
环境:
在连接之前似乎没有帮助。
使用 java 客户端(SQuirreL SQL)并手动编写 INSERT INTO 语句可以很好地插入记录,所以我确定这不是数据库的配置方式。
有什么想法吗?
oracle - ORA-01461 带有 MERGE INTO 语句和 clob 列
查询:
桌子:
结果:当存在一行时,我们得到 ORA-01461。
期望的目标:这是对该表中一行有效的“创建或替换”操作。如果表中存在“名称”,则应更新 xml 列,否则插入新行。
sql - 更新具有 CLOB 列的表时出错:ORA-01461
我在 Oracle 数据库中有一个表,如下所示,
如果我尝试将大小超过 4000 的 varchar2 变量插入 CLOB 列,它会毫无问题地插入。
如果我尝试如下更新 CLOB 列,它工作得很好。
但是,如果我尝试按如下方式运行更新语句,则会由于“ORA-01461:只能绑定 LONG 值以插入 LONG 列”错误而失败。
我怀疑是 NVL 功能导致了问题。对此的任何帮助都将受到高度赞赏。
注意:我在示例中使用了一个简单的表,但实际上该表有几个列,并且更新语句必须一次更新许多列。
java - Oracle 休眠 ORA-01461 CLOB
//大家好。我的问题是我不能在 clob 字段中写大日期。curentli 我可以写长度不超过 4000 的字符串。你能解释一下为什么我不能将 clob 写入 clob 字段。我在用着:
- Oracle 数据库 11g 企业版 11.2.0.1.0 版
- 列表项休眠 4.2.6.Final
- 列表项 ojdbc 11.1.0.7.0
我的实体是:
我更新实体的代码:
我尝试了几种创建 Clob 的方法:
和
两种方式都抛出异常:
编辑
表是
此代码在 SQL Developer 中执行良好
java - PreparedStatement + Select for update + Oracle 12c + ORA-01461 在主键列
尝试执行 select for update 语句然后随后执行插入或更新时,我遇到了一个奇怪的问题。我得到一个ORA-01461异常。这只发生在使用最新的 ojdbc 驱动程序 ( 12.1.0.2 ) 时,而在较旧的驱动程序中它工作正常 ( 12.1.0.1 )。
更具体地说,最新的驱动程序似乎对主键字符长度有某种限制(限制为 32 个字符),尽管相应的列被声明为超过 32 个字符。复制问题的示例代码如下:
还有一些java:
main 方法的第一行创建了一个 uuid
这是 36 个字符长。运行此示例类将产生 ORA-01461 错误,但将上述行更改为
生成 32 个字符的字符串将正确运行并在数据库中插入行。请注意,保存上述字符串的“TEST_ID”列是 VARCHAR2(40 CHAR),可以同时容纳 32 和 36 个字符的字符串。将列的长度增加到更大的数字不会改变任何事情。
我希望我的示例代码易于阅读和理解,我期待这个问题的解决方案/解释。
谢谢!
数据库信息:
稍作修改以运行具有相同数据的插入语句,以表明这个问题比看起来更奇怪(关于 uuid 字符串长度)。以下示例代码使用最新的 oracle 驱动程序正确执行: