Hello,
make a byte array from your serialized object and insert this byte array:
SerialTest st=new SerialTest(1, "String one"); // SerialTest is
java.io.Serializable object
PreparedStatement prepSt=connection.prepareStatement("insert into
BLOBTAB values (?,?)");
prepSt.setInt(1, 1);
prepSt.setObject(2, st.getBytes()); // This column is declared as
LONG BYTE
prepSt.execute();
connection.commit();
prepSt.close();
Regards,
Marco
----------------------------------------------
Marco PASKAMP
SAP DB, SAP Labs Berlin
> -----Original Message-----
> From: Vadim Parfenov [mailto:[EMAIL PROTECTED]]
> Sent: Dienstag, 26. M�rz 2002 01:35
> To: [EMAIL PROTECTED]
> Subject: Storing java.io.Serializable objects in SapDB
>
>
> Hello;
> I need to store serializable java objects in SapDb. I tried
> the following simple approach:
> 1) Declared LONG BYTE column in my database table;
> 2) Used PreparedStatement.setObject(int, java.lang.Object)
> method to set the object to be stored. Below is small code
> fragment of what I tried to do:
> SerialTest st=new SerialTest(1, "String one"); //
> SerialTest is java.io.Serializable object
> PreparedStatement
> prepSt=connection.prepareStatement("insert into BLOBTAB
> values (?,?)");
> prepSt.setInt(1, 1);
> prepSt.setObject(2, st); // This column is declared as
> LONG BYTE
> prepSt.execute();
> connection.commit();
> prepSt.close();
> Unfortunately the attempt to store object using this approach
> results in the following exception:
> com.sap.dbtech.jdbc.translators.ConversionExceptionSapDB:
> Cannot put ASCII data into this long column
> at
> com.sap.dbtech.jdbc.translators.StreamTranslator.transAsciiStr
> eamForInput(StreamTranslator.java:251)
> at
> com.sap.dbtech.jdbc.translators.StreamTranslator.transStringFo
> rInput(StreamTranslator.java:340)
> at
> com.sap.dbtech.jdbc.translators.DBTechTranslator.transObjectFo
> rInput(DBTechTranslator.java:1031)
> at
> com.sap.dbtech.jdbc.CallableStatementSapDB.setObject(CallableS
> tatementSapDB.java:1571)
> at
> com.sap.dbtech.jdbc.trace.PreparedStatement.setObject(Prepared
> Statement.java:1101)
> at sapdb.BasicCheck.writeTestObject(BasicCheck.java:134)
> Are there any ways to write/read java.io.Serializable objects
> using com.sap.dbtech.jdbc.DriverSapDB driver? I am using
> sapdb-jdbc-bin-7.3.0.23a.jar driver (the latest I found) with
> SapDB 7.3.
> Any help is appreciated.
> Thank you,
> Vadim
>
_______________________________________________
sapdb.general mailing list
[EMAIL PROTECTED]
http://listserv.sap.com/mailman/listinfo/sapdb.general