关闭

jsp中向MySQL插入数据出现:Parameter index out of range (1 > number of parameters, which is 0).

标签: mysqljspsqljava
221人阅读 评论(0) 收藏 举报
</pre>正常的想法是和MySQL插入语句一样的:<pre name="code" class="java">String sql="insert into student(‘no’,‘name’,‘score’,‘password’) values(?,?,?,?)"
但其实如果这样写就会爆出:Parameter index out of range (1 > number of parameters, which is 0).
如果改成如下语句就不会报错
<pre name="code" class="java">String sql="insert into student(no,name,score,password) values(?,?,?,?)"	;
也就是SQL语句中不能出现‘’。

public static int insertStudent(Student student) {
		Connection conn=DB.getConn();
		String sql="insert into student(no,name,score,password) values(?,?,?,?)"	;
		PreparedStatement pstmt=DB.prepare(conn,sql);
		try {
			pstmt.setString(1, student.no);
			pstmt.setString(2, student.name);
			pstmt.setInt(3, student.score);
			pstmt.setString(4, student.password);
			pstmt.executeUpdate();
		} catch (SQLException e) {
			e.printStackTrace();
		}finally {
			DB.close(pstmt);
			DB.close(conn);
		}	
		return 1;
	}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2462次
    • 积分:99
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:0篇
    • 译文:2篇
    • 评论:0条
    文章分类