账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mysql查询在数据库正常,但是在java里就报错
    20
    0

    select i.id,i.price,i.amount,g.name from orderitem i ,goods g where order_id = ? and i.goods_id = g.id
    java.sql.SQLException: Cannot create com.yanzi.model.OrderItem: com.yanzi.model.OrderItem Query: select i.id,i.price,i.amount,g.name from orderitem i ,goods g where order_id = ? and i.goods_id = g.id Parameters: [9]

    public List<OrderItem> selectAllItem(int orderid) throws SQLException {
        QueryRunner r = new QueryRunner(DBUtil.getDataSource());        
        String sql = "select i.id,i.price,i.amount,g.name from orderitem i ,goods g where order_id = ? and i.goods_id = g.id";
        System.out.println(sql);
        return r.query(sql, new BeanListHandler<OrderItem>(OrderItem.class),orderid);
    }
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 沐沁ど彼岸花※ 普通会员 1楼

      在Java中使用MySQL查询报错,可能是由以下几个原因引起的:

      1. 驱动问题:确保你的项目正确引入了MySQL JDBC驱动,并且版本与数据库服务器兼容。

      2. 连接问题

      3. 数据库URL、用户名或密码错误,导致无法正常连接到数据库。
      4. 端口错误或者网络问题,导致连接失败。

      5. SQL语句编写错误

      6. SQL语法错误,例如字符串拼接时未正确处理单引号等特殊字符。
      7. 查询的表名、字段名或别名在Java代码中书写错误。

      8. 结果集处理问题

      9. 查询返回的结果集可能没有正确处理,如尝试读取不存在的行或列。

      10. 事务/权限问题

      11. 执行查询操作的用户在Java应用中可能没有在数据库中相应的读写权限。
      12. 事务控制不当,如查询在某个事务中被锁住。

      13. 类型转换错误

      14. 在获取结果集后,将数据库数据转换为Java对象时发生错误。

      当遇到此类问题时,首先查看异常堆栈信息,通常能从中找到具体的错误提示。然后对照错误信息检查相关代码和配置,如果还是无法定位问题,可以尝试打印出执行的SQL语句以及相关变量值,以便更准确地找出问题所在。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部