mysql准备语句错误:MySQLSyntaxErrorException [英] mysql prepared statement error: MySQLSyntaxErrorException

查看:1455
本文介绍了mysql准备语句错误:MySQLSyntaxErrorException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用预准备语句编写了select语句。每次尝试运行它都会出现此错误。
我怎么过来这个错误?
我的jdbc连接器是mysql-connector-java-5.1.13-bin.jar。
我的代码:

I wrote select statement using prepared statement. Each time try to run it gives this error. How am I over come this error? my jdbc connector is mysql-connector-java-5.1.13-bin.jar. my code :

 public Main_add_ad_to getAdDetail(int ad_id) {
    Dbconnection db = new Dbconnection();
    Connection con = db.getConnection();
    ResultSet rs = null;

    PreparedStatement stmt = null;
    Main_add_ad_to detail_to = new Main_add_ad_to();
    try {
    String selectSQL = "SELECT *  FROM ads_tbl where id = ?";

    stmt = con.prepareStatement(selectSQL);
    stmt.setInt(1, ad_id);
    rs = stmt.executeQuery(selectSQL);
    while (rs.next()) {

        detail_to.setCat_ad(rs.getString("cat"));
        detail_to.setType_ad(rs.getString("sale_type"));
        detail_to.setBrand(rs.getString("brand"));
    }catch (SQLException ex) {
        Logger.getLogger(Lands_cls.class.getName()).log(Level.SEVERE, null, ex);
    }
return detail_to;
}

错误代码..

2013年10月1日下午1:23:23 sanin.lands.model.View_ads_cls getAdDetail

Oct 01, 2013 1:23:23 PM sanin.lands.model.View_ads_cls getAdDetail

SEVERE: null
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 '?' at line 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)


推荐答案

错误在这一行

    rs = stmt.executeQuery(selectSQL);

这样做

    rs = stmt.executeQuery();

这篇关于mysql准备语句错误:MySQLSyntaxErrorException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆