Java 准备好的语句不完全有效 - MYSQL
Java Prepared Statements Not Entirely Working - MYSQL
我正在使用 Java Servlet 连接并将数据插入我的 MYSQL 数据库。我目前正在使用以下准备好的语句:
String query1 = "SELECT * FROM `user` WHERE `username` = ?;";
PreparedStatement stat1 = connection.prepareStatement(query1);
stat1.setString(1, username);
ResultSet result = stat1.executeQuery();
out.println("<h1> PREPARED STATEMENT WORKING </h1>");
使用这个,h1 header 不显示。
但是,我已经让这个工作了:
String query1 = "SELECT * FROM `user` WHERE `username` = \"" + username + "\";";
PreparedStatement stat1 = connection.prepareStatement(query1);
ResultSet result = stat1.executeQuery();
out.println("<h1> PREPARED STATEMENT WORKING </h1>");
使用这个方法,显示h1 header。我的问题是,我的工作方式是否不太安全?如果是这样,我怎样才能让第一种方法起作用?
尝试从您的查询中删除 ;
并告诉我们它是否有效。
我正在使用 Java Servlet 连接并将数据插入我的 MYSQL 数据库。我目前正在使用以下准备好的语句:
String query1 = "SELECT * FROM `user` WHERE `username` = ?;";
PreparedStatement stat1 = connection.prepareStatement(query1);
stat1.setString(1, username);
ResultSet result = stat1.executeQuery();
out.println("<h1> PREPARED STATEMENT WORKING </h1>");
使用这个,h1 header 不显示。
但是,我已经让这个工作了:
String query1 = "SELECT * FROM `user` WHERE `username` = \"" + username + "\";";
PreparedStatement stat1 = connection.prepareStatement(query1);
ResultSet result = stat1.executeQuery();
out.println("<h1> PREPARED STATEMENT WORKING </h1>");
使用这个方法,显示h1 header。我的问题是,我的工作方式是否不太安全?如果是这样,我怎样才能让第一种方法起作用?
尝试从您的查询中删除 ;
并告诉我们它是否有效。