在weblogic8.14里面操作oracle大字段
1.首先说明一下:
原因是因为我在做这个项目时,被限制得太多,weblogic和oracle的版本不能变,要使用原来的版本。
因此呢。操作起来比较麻烦。而且不能更改原本工程里面的Jar包(它里面存在了oracle14.jar包,但比较旧)
weblogic版本为:8.14
oracle版本为:9i
2.在这里呢,使用hibernate,以流的形式读取到数据里面。
3.数据表呢:是一张保存文件的表
如下:
CREATE TABLE T_UPLOAD_FILE (
FILE_ID VARCHAR2(60) PRIMARY KEY NOT NULL,
FILE_NAME VARCHAR2(250) NOT NULL,
OLD_FILE_NAME VARCHAR2(250) NOT NULL,
FILE_PATH VARCHAR2(250) NOT NULL,
FILE_TYPE VARCHAR2(10),
FILE_SIZE LONG,
STATUS CHAR(1) NOT NULL,
UPLOAD_TIME TIMESTAMP,
OPERATOR_ID VARCHAR2(30),
FILE_CONTENT BLOB
);
4.一个上传文件的文件对象:
UploadFileBFO:
private java.lang.String fileId;
private java.lang.String fileName;
private java.lang.String filePath;
private java.lang.Long fileSize;
private java.lang.String fileType;
private java.lang.String oldFileName;
private java.lang.String status;
private java.sql.Timestamp uploadTime;
private java.lang.String operatorId;
private java.sql.Blob fileContent;
//....get/set方法
5.在DAO里面实现:
/**
* 保存文件到数据库表中
*/
public boolean saveFileToDatabase(UploadFileBFO uploadFileBFO) {
boolean result = true;
Session s = null;
byte[] buffer = new byte[1];
buffer[0] = 1;
OutputStream out = null;
FileInputStream fin = null;
try {
SessionFactory sf = this.getSessionFactory();
s = sf.openSession();
Transaction tx = s.beginTransaction();
// 获取已经保存到数据库的对象
TUploadFileBO fileBO = getById(uploadFileBFO.getFileId());
fileBO.setFileContent(Hibernate.createBlob(buffer));
s.update(fileBO); // 更新对象
s.flush();
s.refresh(fileBO, LockMode.UPGRADE);
SerializableBlob
相关文档:
原文地址:
http://blog.sina.com.cn/s/blog_60e4205e0100esaf.html
找出正在执行的JOB编号及其会话编号
SELECT SID,JOB from
DBA_JOBS_RUNNING;
停止该JOB的执行
SELECT SID,SERIAL# from
V$SESSION WHERE ......
原文地址:http://guyuanli.itpub.net/post/37743/484763
每天1点执行的oracle JOB样例
DECLARE
X NUMBER;
BEGIN
SYS.DBMS_JOB.SUBMIT
( job =>
X,
what => 'ETL_RUN_D_Date;',
next_date => to_date('2009-08-26
01:00:00','yyyy-mm-dd hh24:mi:ss'),
interval =>
'trunc(sysdate)+1+1/24',
n ......
何为LOB?
lob为oracle数据库的一个大对象数据类型,可以存储超过4000bytes的字符串,二进制数据,OS文件等大对象信息.最大可存储的容量根oracle的版本和oracle 块大小有关.
有那几种可供选择的LOB类型?
目前ORACLE提供了CLOB,NCLOB,BLOB,BFILE共四种LOB类型,CLOB,NLOB为大字符串类型,NLOB为多语言集字符类型,类似于NV ......
PowerBuilder取得巨大成就的原因就是有功能强大和灵活多变的Datawindow对象,本人用PowerBuilder开发过一段时间后,总结出一些技巧,以供广大的PB开发者借鉴使用。
1、 如何创建一个具有逐渐递增求和功能的报表,如下形式: Running Total列,我们可使用计算列:CumulativeSum(Quantity for all),即可达到逐渐递增求和 ......
Oracle中可以调用Java的代码,一般通过两种方式进行调用,一个是直接将Java代码写在Oracle内部,另外一种是将编译好的class文件载入到Oracle中。
-A-
1、在SQLPlus中创建Oracle中的Java类与方法(方法必须是静态公有方法)
create or replace and compile java source named hello as
public class Hello {
pu ......