Insertproblem für BLOB


[ ruban.de ] [ Antworten ] [ Forum ]

Geschrieben von rabbit on Januar 08, 2004 um 13:40:

Hallo leute,
ich habe in die Datenbank (Version 8) folgende Tabelle erzeugt, um die Microsoft Word als BLOB zu speichern.

CREATE TABLE doktable_intern(text_id int CONSTRAINT dokintern_index PRIMARY KEY not null, titel varchar(500), content BLOB);

Durch folgendes Programmabschnitt kann ich die Dok-Dateien in die Tabelle einfügen.
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO doktable_intern(text_id, titel, content) VALUES(?, ?, ?)");
pstmt.setInt(1, 1);
pstmt.setString(2, "ABCD");
File f = new File("ABCE.doc");
FileInputStream fis = new FileInputStream(f);
pstmt.setBinaryStream(3, fis, (int) f.length());
pstmt.execute();

Aber wenn ich eine Dok-Datei einfügen möchte, deren Größe größer als 1MB ist, dann bekomme ich eine Fehlermeldung:
COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver][DB2/NT] SQL0302N Der Wert einer Host-Variablen in der Anweisung EXECUTE oder OPEN ist zu groß. SQLSTATE=22001

Ich weiss, man darf in einer Spalte höchstens 2 GB Dateien speichern. Aber für jede einfügte Datei gibt es noch Beschränkung, das habe ich gar nicht in der Dokumentation von DB2 gelesen. Kann jemand mich ein bisschen erklären, wie man das Problem erledigen kann?
Vielen Dank!

rabbit




Antworten:


Schreibe eine Antwort

Name:   
E-Mail:  

Thema:

Kommentar:

Optionale Link URL:   
Link Titel:                  
Optionale Image URL:


[ Antworten ] [ Forum ]