//读取
rs = 你的sql的结果集
while (rs.next()) {
Blob blob = rs.getBlob("您老人家存的字段");
ByteArrayInputStream bais = new ByteArrayInputStream(blob.getBytes(1,
(int) blob.length()));
ObjectInputStream obis = new ObjectInputStream(bais);
(什么类型) ele = (类型) obis.readObject();
//你存的是什么类型,取出来牵制转换下
}
rs = 你的sql的结果集
while (rs.next()) {
Blob blob = rs.getBlob("您老人家存的字段");
ByteArrayInputStream bais = new ByteArrayInputStream(blob.getBytes(1,
(int) blob.length()));
ObjectInputStream obis = new ObjectInputStream(bais);
(什么类型) ele = (类型) obis.readObject();
//你存的是什么类型,取出来牵制转换下
}
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos); //调用方法重新计算组件的大小、两个参数迭代器,一个用来计算bounds,一个用来设置大小
ResizeDiy resizediy = new ResizeDiy(theApp.getModel().getIterator(),
theApp.getModel().getIterator());
resizediy.resetModel();
oos.writeObject(theApp.getModel()); ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray());
//非开关sql
String sql =
"insert into Equp(id,Equpname,Equp_f,Equp_type) values ("
+ "off_Equp_id.nextval,'" + input + "',?,'" + groupname + "')";
PreparedStatement pstate = datesource.getcon().prepareStatement(sql);
pstate.setBinaryStream(1, bis, bis.available());
pstate.execute();
bis.available();
pstate.close();
//塞进去
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(“您老人家要存的东西”); ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray());
String sql =“您老人家的sql 语句,?”//?代表你的字段内容
PreparedStatement pstate = datesource.getcon().prepareStatement(sql);
pstate.setBinaryStream(1, bis, bis.available());
pstate.execute();
bis.available();
pstate.close();
呵呵!塞进去!恭喜!
有必要吗?没有必要,到底有没有必要,就讨论一下吗?这么兴奋干什么名?pstate.close();你不搞!哼!哼哼!呵呵!如果你的pstate过多的话,导致游标超出范围!例如你在一个while循环里搞,
那么搞的结果就是游标超出范围!呵呵!当然系统小的时候是看不出来的!是的!呵呵!是的!
别嫌我烦!
俺只是个女农民,俺容易吗俺!
你还放着好好的分不给人家,人家心里课着急了!你只要把分给人家让人家干什么都中----------------------------这是谁的分呀这是偶的分!
File file=new File("f:\\object.jpg");
out.println(file.length());
java.io.FileInputStream filein=new FileInputStream(file);
PreparedStatement st1=conn.prepareStatement("update table set ob=?");
st1.setBinaryStream(1,fileint,2000);
st1.executeUpdate();
filein.close();
{
int fileSize;
ByteArrayInputStream bis;
try
{
ImageIcon image = new ImageIcon(fileName);
log("生成imageicon");
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(image);
log("存入ObjectOutputStream");
bis = new ByteArrayInputStream(bos.toByteArray());
fileSize = bis.available();
log("存入ByteArrayInputStream, size: " + fileSize);
}
catch (Exception E)
{
log("读入文件流错误!");
return false;
}
String sql = "delete from TEST";
try
{
smt.executeUpdate(sql);
}
catch (SQLException E)
{
log("删除数据错误!");
}
sql = "insert into TEST(ID, NAME) values(?,?)";
try
{
pstmt = FCon.prepareStatement(sql);
pstmt.setInt(1, 100);
pstmt.setBinaryStream(2, bis, fileSize);
pstmt.executeUpdate(); pstmt.close();
log("数据流写入数据库成功!");
}
catch (SQLException E)
{
log("文件流写入数据库错误!");
E.printStackTrace();
return false;
}
return true;
}
File file=new File("f:\\object.jpg");
out.println(file.length());
java.io.FileInputStream filein=new FileInputStream(file);
PreparedStatement st1=conn.prepareStatement("update table set ob=?");
st1.setBinaryStream(1,fileint,2000);
st1.executeUpdate();
filein.close();
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:323)
at oracle.jdbc.driver.OracleStatement.close(OracleStatement.java:604)
at oracle.jdbc.driver.OraclePreparedStatement.privateClose(OraclePrepare
dStatement.java:290)
at oracle.jdbc.driver.OraclePreparedStatement.close(OraclePreparedStatem
ent.java:235)
at dbImage.insertImage(dbImage.java:172)
at dbImage.main(dbImage.java:189)
Press any key to continue...
你再说错,俺就叫人打你!
试!
try {
bka b = new bka();//您的数据库连接
File file=new File("c:\\ball.gif");
java.io.FileInputStream filein=new FileInputStream(file);
PreparedStatement st1=b.getcon().prepareStatement(
"insert into Equp(id,Equp_f) values ("
+ "off_Equp_id.nextval,?)");
st1.setBinaryStream(1,filein,2000);
st1.executeUpdate();
filein.close();
}
catch(Exception e) {
e.printStackTrace();
}