当我尝试插入其中BLOB数据类型当我试图执行INSERT语句,我得到了下面的错误,我得到一个错误
问题描述:
Create TABLE long_claw
(
"name" varchar2(10),
phno number(10),
clg_docs blob
)
partition by hash(phno);
insert into pepe.long_claw("name",phno,clg_docs)
values('Satyajit',9176788770,to_lob('ceb'));
表:当我尝试插入其中BLOB数据类型当我试图执行INSERT语句,我得到了下面的错误,我得到一个错误
Error starting at line : 9 in command -
insert into pepe.long_claw("name",phno,clg_docs) values('Satyajit',9176788770,to_lob('ceb'))
Error at Command Line : 10 Column : 30
Error report -
SQL Error: ORA-00932: inconsistent datatypes: expected - got CHAR 00932. 00000 - "inconsistent datatypes: expected %s got %s"
*Cause:
*Action:
我需要一些帮助在这里。
答
TO_LOB
将LONG
或LONG RAW
的值转换为LOB
的值。因此,您不能直接使用字符串将其转换为LOB
。而是使用hextoraw()
OR utl_raw.cast_to_raw()
INSERT INTO long_claw("name",phno,clg_docs)
VALUES('Satyajit',9176788770,hextoraw('ceb'));
INSERT INTO long_claw("name",phno,clg_docs)
VALUES('Satyajit',9176788770,utl_raw.cast_to_raw('ceb'));
答
你需要创建procedure
create or replace procedure proc_name(na in varchar2, ph in number, clg_doc in blob)
begin
inser into pepe.long_claw("name",phno,clg_docs) values
(na, ph, clg_doc);
end;
,并调用它的过程
请格式化代码和错误消息的代码。而且,只要你不告诉你正在使用哪种数据库软件,我们可能无法帮助你。 – Binarus