查询中的 MySQLSyntaxErrorException
MySQLSyntaxErrorException in query
session.getAttribute('loginId')//giving 1
ResultSet rs=st.executeQuery("select * from interest where loginid='session.getAttribute('loginId')'");
或
ResultSet rs=st.executeQuery("select * from interest where loginid='session.getAttribute("loginId")'");
这给我 sql 异常。
我的查询有什么问题?而-
ResultSet rs=st.executeQuery("select * from interest where loginid='1'");
运行 很好。
我无法通过将 loginId 存储在字符串对象中来调用它。
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'loginId')'' at line 1
您必须连接字符串。不在一个字符串中包含参数:
更改为:
ResultSet rs=st.executeQuery("select * from interest where loginid='"+session.getAttribute("loginId")+"'");
或者更好地使用准备好的语句。它可以防止您 sql 注入,您的查询将更容易阅读。
传入从getAttribute
返回的值而不是文字值session.getAttribute('loginId')
PreparedStatement preparedStatement =
conn.prepareStatement("select * from interest where loginid=?");
preparedStatement.setString(1, session.getAttribute("loginId"));
session.getAttribute('loginId')//giving 1
ResultSet rs=st.executeQuery("select * from interest where loginid='session.getAttribute('loginId')'");
或
ResultSet rs=st.executeQuery("select * from interest where loginid='session.getAttribute("loginId")'");
这给我 sql 异常。
我的查询有什么问题?而-
ResultSet rs=st.executeQuery("select * from interest where loginid='1'");
运行 很好。
我无法通过将 loginId 存储在字符串对象中来调用它。
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'loginId')'' at line 1
您必须连接字符串。不在一个字符串中包含参数:
更改为:
ResultSet rs=st.executeQuery("select * from interest where loginid='"+session.getAttribute("loginId")+"'");
或者更好地使用准备好的语句。它可以防止您 sql 注入,您的查询将更容易阅读。
传入从getAttribute
返回的值而不是文字值session.getAttribute('loginId')
PreparedStatement preparedStatement =
conn.prepareStatement("select * from interest where loginid=?");
preparedStatement.setString(1, session.getAttribute("loginId"));