【】Oracle 数据库中 blob字段有关问题
发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
【求助】Oracle 数据库中 blob字段问题
winform做照片存储到Oracle中时遇到更新数据卡死的状况,如果不停止会直接报连接超时的错误,
如果强制停止可以看到该字段有值。但是该条数据一直被占用锁死。
图片大小都不大 ,只有2k-4k左右。且已经转换为byte型。
OracleParameter[] parameters = new OracleParameter[2];
parameters[0] = new OracleParameter("p_customersn", OracleDbType.Varchar2);
parameters[0].Value = customerSn;
parameters[1] = new OracleParameter("p_photo", OracleDbType.Blob, photo.Length);
parameters[1].Value = photo;
OracleHelper.ExecuteNonQuery(Program.connectionString, CommandType.StoredProcedure, "update_photp", parameters);
sql试过两种写法:
1、这种写法可以存进去,但是一直占用,无法停止。
PROCEDURE update_photp (p_customersn IN VARCHAR2, p_photo IN BLOB)
IS
BEGIN
--取出blob对象
UPDATE spe_customer
SET photo = p_photo
WHERE customer_sn = p_customersn;
END;
2、这种写法一个字也存不进去
PROCEDURE update_photp (p_customersn IN VARCHAR2, p_photo IN BLOB)
IS
lobloc BLOB;
query_str VARCHAR2 (1000);
BEGIN
--取出blob对象
UPDATE spe_customer
SET photo = EMPTY_BLOB ()
WHERE customer_sn = p_customersn;
query_str :=
'select photo from spe_customer where customer_sn= :id for update ';
EXECUTE IMMEDIATE query_str
INTO lobloc
USING p_customersn;
--更新
DBMS_LOB.WRITE (lobloc, UTL_RAW.LENGTH (p_photo), 1, p_photo);
--COMMIT;
END;
请问大家遇到过这种现象吗?
是什么原因导致的?是写法问题,还是数据库有什么问题?
谢谢了 很紧急!~ 非常感谢~~~
------解决方案--------------------
用PL SQL DEV工具可以更新进去>?
可以的话就是你的程序有问题,可能转换有问题,不行的话,看看报什么错误
------解决方案--------------------
没用过C#,参考一下:
1.http://lveyo.javaeye.com/blog/175727
2.http://blog.sina.com.cn/s/blog_4b9d73ad010008f2.html
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
orcale 把日期当做查询条件
根据日期查询范围
精确到天
select * from table where to_char( time,'yyyy mm dd ' ) <= '2000 ...
-
oracle decode函数和 sign函数
流程控制函数 DECODE
decode()函数简介:
主要作用:
将查询结果翻译成其他值(即以其他形式表现出来,以...
-
图说Oracle基础知识(一)
本文主要对Oralce数据库操作的基础知识进行一下梳理,以便进行归纳总结。适用于未使用过Oracle数据库的读者,...
-
DELETE操作出现:ORA-30036: 无法按 1024 扩展段 (在撤消表空间 'UNDOTBS_1' 中)
在测试过程中需要清空数据库中的几张表,...
-
.Net程序员学用Oracle系列(8):触发器、任务、序列、连接
《.Net程序员学用Oracle系列:导航目录》
本文大纲
1、触发器
1.1、创建...
-
Oracle12C相关
1.jar包安装到MVN本地库 mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0....
-
关于Oracle安装在多系统
我电脑有win7x86和XP双系统
其中win7在D盘安装有Oracle,数据库名为orcl
请问如何在xp中使用orcl
------...
-
oracle 触发器,序列,索引
oracle 触发器,序列,索引
1
2
3 --1,触发器 ----trigger
4 /*触发器是一种特殊的存储过程,它与数...
-
Oracle 设置表空间自增长
Oracle修改表空间大小
使用Oracle10g建立数据库后,向数据库中导入了部分数据,第二天继续向数据库中导入...
-
ORACLE分区表梳理系列(二)- 分区表日常维护及注意事项(红字需要留意)
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumik...