首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

ORACLE怎么使用BLOB,LONG RAW类型存储图片

2012-09-28 
ORACLE如何使用BLOB,LONG RAW类型存储图片以下代码可以向数据库插入二进制形式的图片、文件、视频等。Java代

ORACLE如何使用BLOB,LONG RAW类型存储图片
以下代码可以向数据库插入二进制形式的图片、文件、视频等。Java代码

package test;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;public class OracleImageTest {/* * create table IMAGETABLE ( IMAGE_BLOB BLOB, IMAGE_LONG_RAW LONG RAW ) */public static void main(String[] args) {Connection connection = null;try {String sql = "insert into imagetable (image_blob )values (?  )";connection = getORACLEConn();File f = new File("c://myimage.png");FileInputStream fis = new FileInputStream(f);PreparedStatement ps = connection.prepareStatement(sql);ps.setBinaryStream(1, fis, f.length());ps.execute();fis = new FileInputStream(f);sql = "insert into imagetable (image_long_raw )values (? )";ps = connection.prepareStatement(sql);ps.setBinaryStream(1, fis, f.length());ps.execute();} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();} finally {try {connection.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}public static Connection getORACLEConn() throws ClassNotFoundException,SQLException {Connection connection;Class.forName("oracle.jdbc.driver.OracleDriver");connection = DriverManager.getConnection("jdbc:oracle:thin:@192.168.65.247:1521:ce4702", "qsh91","qsh91");return connection;}}
?通过PL/SQL就可以看到插入的图片,或者通过相反的JDBC过程就可以查询出图片。

热点排行