2013-03-21 43 views
1

您好我正在使用sql developer 3.0。需要幫助 - 查詢插入圖像到一個表中sql developer3.0

我需要將圖像作爲BLOB存儲在表中。

我創建了一個表,如下所示:

CREATE TABLE Account_images(img_id NUMBER, MP_ID NUMBER, icon BLOB); 

我需要存儲的圖像是在

'C:\Project\images\' 

請人幫我的圖片插入到數據庫wuth SQL查詢?

在此先感謝。

+0

數據庫是不是二進制文件最好存儲。文件系統已針對該任務進行了優化。數據庫應該在文件系統上存儲指向實際文件的物理地址。 – 2013-03-21 10:11:18

+0

是否需要完成一次性工作? – evgenyl 2013-04-14 09:45:46

回答

0
  1. 將圖像存儲在文件中。

    File image = new file(「'C:\ Project \ images \ image.jpg」);

  2. Sql查詢插入。 (1,1 ,?)「插入到Account_images(img_id,img_id,icon)中的字符串Sql =」插入到Account_images(img_id,img_id,icon)

  3. Perpare聲明

    的PreparedStatement pStatement =各種Connection.prepareStatement(SQL);

  4. 寫入文件到一個FileInputStream

    的FileInputStream FIS = FIS =新的FileInputStream(圖像);

  5. 附加FIS到preparedStatement時作爲

    pStatement.setBinaryStream(1,FIS,fis.length());

  6. 執行語句

    結果集結果= pStatement.executeUpdate();

作爲一個整體

File image=new file("'C:\Project\images\image.jpg"); 
String Sql="insert into Account_images(img_id,img_id,icon) values(1,1,?)"; 
PreparedStatement pStatement=connection.prepareStatement(sql); 
FileInputStream fis =fis = new FileInputStream(image); 
pStatement.setBinaryStream(1, fis,fis.length()); 
ResultSet result=pStatement.executeUpdate();