我试图从Java向MySQL数据库添加空记录,无论表有多少列或列是什么数据类型。
到目前为止,我已经提出了这种方法:
//Add first value 0 cause its probably the primary key ID with auto incrementation
String emptyColumns="\"0\",";
//Loop through the remaining columns ( without the first one and the last one)
//and add for each column an empty value with a comma, eg "",
for(int i=2; i<nrCols; i++){
emptyColumns=emptyColumns+"\"\",";
}
//For the last column add an empty value without comma, eg ""
emptyColumns=emptyColumns+"\"\"";
addNewRecord = (PreparedStatement) conn.prepareStatement("Insert into " +selectedTable + " VALUES(" + emptyColumns + ");");
addNewRecord.executeUpdate();
如果表有一个日期列,或者第一列不是主键自动递增id列,则问题不起作用。
无论表的结构如何,我如何添加空记录?
答案 0 :(得分:-1)
对于primery键,您不提供值,数据库将为您插入。如果列是日期,则需要传递null(如果不为null)或正确的语法,例如: STR_TO_DATE(&#39; 1-01-2012&#39;,&#39;%d-%m- %Y&#39)强>