网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

oracle怎么存储文档,oracle存文件

oracle在实际工作中图片,音频文件等应该怎么存储?

如果必须存储在数据库,转成clob,blob存。不过最好是搞个专门的文件存储服务器存储,数据库只存路径位置就好。

成都创新互联公司服务项目包括石首网站建设、石首网站制作、石首网页制作以及石首网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,石首网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到石首省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

oracle 存储过程 存储文件

直接用java读,然后存到oracle中比较好。

我现在用的代码:

try{

//BLOB java 代码

//获得数据库连接

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection con=DriverManager.getConnection("jdbc:oracle:thin:@192.168.131.75:1521:orcl","scott","tiger");

con.setAutoCommit(false);

Statement st = con.createStatement();

System.out.println("conn");

/*

//插入一个空对象

st.executeUpdate("insert into FJ_TAB values(3,1,'there',empty_blob())");

System.out.println("insert");

//用for update方式锁定数据行

ResultSet rs = st.executeQuery("select FI from FJ_TAB where fjid=3 for update");

System.out.println("获取得到更新列");

if (rs.next()) {

//得到java.sql.Blob对象,然后Cast为oracle.sql.BLOB

oracle.sql.BLOB blob = (oracle.sql.BLOB) rs.getBlob(1);

//到数据库的输出流

OutputStream outStream = blob.getBinaryOutputStream();

//这里用一个文件模拟输入流

File file = new File("c://1.doc");

InputStream fin = new FileInputStream(file);

//将输入流写到输出流

byte[] b = new byte[blob.getBufferSize()];

int len = 0;

while ( (len = fin.read(b)) != -1) {

outStream.write(b, 0, len);

//blob.putBytes(1,b);

}

//依次关闭(注意顺序)

fin.close();

outStream.flush();

outStream.close();

con.commit();

con.close();

}

*/

//不需要“for update”

ResultSet rs = st.executeQuery("select FI from FJ_TAB where FJID=3");

if (rs.next())

{

java.sql.Blob blob = rs.getBlob("FI");

InputStream inStream = blob.getBinaryStream();

//data是读出并需要返回的数据,类型是byte[]

int length = (int) blob.length();

byte[] data = new byte[length];

//data = new byte[inStream.available()];

inStream.read(data);

inStream.close();

FileOutputStream fo = new FileOutputStream("c://2.doc");//数据到的文件名

fo.write(data);

fo.close();

System.out.println("DATA="+data.toString());

}

con.commit();

con.close();

}catch(IOException io){

System.out.println("IOexception:"+io.toString());

}catch(SQLException sql){

System.out.println("SQLxception:"+sql.toString());

}catch(ClassNotFoundException ex){

System.out.println("ClassNotFoundException:"+ex.toString());

}

在Oracle要保存WORD文档、图片,用什么类型?

可以用blob或bfile类型来存储该类二进制数据。具体说明如下:

★ blob:用来存储可变长度的二进制数据,blob数据在数据库之间或在客户机与服务器进程之间传递时不经历字符集的转换。

★ bfile:在数据库外面存储可变长二进制数据,Bfile数据类型最多存储4GB的数据,在某些操作系统中甚至更少。


分享标题:oracle怎么存储文档,oracle存文件
网页路径:http://bjjierui.cn/article/hsdjcp.html

其他资讯