用Statement对象做增加数据时出错(很简单的问题)
在执行数据库增加操作时 第3行语句编译出错
提示userName有错误:Invalid character constant
1)Statement stmt=conn.createStatement
2) stmt.execute( "insert into stu values
3) ( " '+userName+ ' ", " '+language+ ' ", " '+age+ ' ", " '+favString+ ' ") ");
4)stmt.close();
后来只好将其该为:
PreparedStatement psmt=conn.prepareStatement( "insert into stu(userName,language,age,favString) values(?,?,?,?) ");
psmt.setString(1, userName);
psmt.setString(2, language);
psmt.setInt(3, age);
psmt.setString(4, favString);
psmt.execute();
psmt.close();
改后可以正常运行,但要是想用第一种方法怎么写啊?
------解决方案--------------------另外,按你第二种的写法,age应该是int型的,怎么你还要在第一种中用 ' '来传age呢?
所以我上面的写法也是不对的,该改为
"insert into stu values( ' "+userName+ " ', ' "+language+ " ', "+age+ ", ' "+favString+ " ') "
ps:基础,基础,基础!!!!