public boolean insertImage(File f)
{
String StrSql = "insert into imageTable values (?,?,?,?,?,?,?)";
String sFile = f.getName(); try
{
// File f = new File("e:\\T14.gif");
fin = new FileInputStream(f);
/*//////////////////////////////////////通过字节数组来存入数据库
byte[] ib = new byte[(int)f.length()];
fin.read(ib);
ByteArrayInputStream fou1 = new ByteArrayInputStream(ib);
*/
ps = conn.prepareStatement(StrSql); ps.setInt(1,miCurrentCount+1);
ps.setString(2,sFile);
ps.setString(3,sFile.substring(sFile.length()-3));
ps.setString(4,f.getPath());
ps.setInt(5,(int)f.length());
///时间
Calendar cc = new GregorianCalendar();
ps.setTimestamp(6,new Timestamp(cc.getTime().getTime()),cc);
/////////////////////////////////////////////////
int len = (int)f.length();
ps.setBinaryStream(7,fin,len);
ps.executeUpdate();
ps.clearParameters();
}
catch ( Exception ex )
{
ex.printStackTrace();
return false;
} miCurrentCount++;
mTestImageDb.jCBRowNumber.addItem(String.valueOf(miCurrentCount)); return true;
}

解决方案 »

  1.   

    要设置:String StrSql = "insert into imageTable values (?,?,?,?,?,?,?)";//?代表列
      

  2.   

    "insert into tx values(1,'bb',99,88)")你的数据库连上了?
      

  3.   

    st.executeQuery("insert into tx values(1,'bb',99,88)");
    是用来执行查询语句的
    必须用
    st.executeUpdate("insert into tx values(1,'bb',99,88)");
    就行
      

  4.   

    用executeUpdate()方法,不用executeQurey方法!
      

  5.   

    我是一个初学者。我想请问smartdonkey (聪明的毛驴) :jdbc:odbc:sqlserver中的sqlserver是什么,是不是一个数据库文件,如果是的话它应该放在什么地方?tx是不是一张表?jdbc能不能和mysql连,怎么连?很多简单的问题,希望你不要烦!
      

  6.   

    sqlserver是odbc,你用odbc管理器建立就是了,名字就叫sqlserver,随你叫就好了
    tx是一个表