java.lang.IllegalArgumentException: the bind value at index 1 is null
本质上还是由于调用的时候userID给了空值
String query = "select regdate,shousuo,shuzhang,maibo from xueya2 where userid = "+userID;
Cursor cursor = db.query("xueya2", new String[]{"regdate,shousuo,shuzhang,maibo"},"userid=?", new String[]{userID}, null, null, null);
这个提示是,你的表中有外键,你就不可以添加随意添加外键值,必须参考表中有对应的外键值。
另外注意,字符串匹配时,要使用like:
主键值没法设置成自动递增,报1602错误,是因为数据库中已经有数据啦,需要将数据库清空再设置。
表中有自动递增的数字时,最安全的操作是:
Statement statement = con.createStatement(); String str = "INSERT INTO xueya2(userid,regdate,shousuo,shuzhang,maibo) VALUES("+bloodpre.toString()+")"; statement.execute(str);
String str = "INSERT INTO xueya2 VALUES("+null+","+bloodpre.toString()+")";
为了便于MySQL数据库操作,Bean类可以重写tostring方法:
@Override public String toString() { // TODO Auto-generated method stub // return "BloodPre [userid=" + userid + ", time=" + time + ", highp=" + highp + ", lowp=" + lowp + ", pulse=" + pulse + "]"; return "\‘"+userid+"\‘,\‘"+time+"\‘,\‘"+highp+"\‘,\‘"+lowp+"\‘,\‘"+pulse+"\‘"; }
时间: 2024-09-29 17:43:46