【发布时间】:2015-08-10 12:03:47
【问题描述】:
我有下表:
CREATE TABLE `contact` (
`idcontact` int(11) NOT NULL AUTO_INCREMENT,
`first_name` varchar(245) NOT NULL,
`last_name` varchar(245) NOT NULL,
`photo` mediumblob NOT NULL,
PRIMARY KEY (`idcontact`),
UNIQUE KEY `idcontact_UNIQUE` (`idcontact`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
我尝试将InputStream 存储在photo 列中,如下所示:
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test1", "root", "root");
Statement st = con.createStatement();
String sql = "insert into contact(first_name,last_name,photo) values('"+firstName+"','"+lastName+"','"+inputStream+"')";
if(st.executeUpdate(sql) !=0){
System.out.println("Success");
} else {
System.out.println("Fail");
}
但null 值已插入我的数据库。这是如何引起的,我该如何解决?
【问题讨论】:
-
了解prepared statement
-
问题到底是什么?图片没有上传?或者插入不起作用?