猿问

您的 SQL 语法有误;检查与您的 MySQL 服务器版本对应的手册

是什么导致了这个异常,我在 a 中使用了类似的方法UserController并且效果很好。SQL 表与实体类的映射是否错误?


我无法存储数据,也无法从中检索任何内容。它一直给我同样的错误,最初我虽然我的纬度和经度可能是错误的但后来我尝试插入一个简单的user_id但也被拒绝了。


控制器


    @Autowired

    OrderMapper orderMapper; 

    @ResponseBody

    @RequestMapping(value = "/getOrder", method = RequestMethod.POST)  

    public Order PlaceOrder() 

    {

        Order order = new Order();

        order.setUserId(1);

        orderMapper.insert(order);

        return order;

    }

OrderMapper


<insert id="insert" parameterType="com.mena.api.entity.Order">

insert into order (order_id, user_id, start_latitude, 

  start_logitude, end_latitude, end_logitude, 

  total_distance, type, cost, 

  create_time, start_address, end_address, 

  user_id2)

values (#{orderId,jdbcType=INTEGER}, #{userId,jdbcType=INTEGER}, #{startLatitude,jdbcType=DECIMAL}, 

  #{startLogitude,jdbcType=DECIMAL}, #{endLatitude,jdbcType=DECIMAL}, #{endLogitude,jdbcType=DECIMAL}, 

  #{totalDistance,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{cost,jdbcType=VARCHAR}, 

  #{createTime,jdbcType=TIMESTAMP}, #{startAddress,jdbcType=VARCHAR}, #{endAddress,jdbcType=VARCHAR}, 

  #{userId2,jdbcType=INTEGER})</insert>

和 SQL 表信息

慕标琳琳
浏览 166回答 1
1回答

杨魅力

order 是 MySql 中的保留字,这就是为什么您select ... from order可能因该异常而失败的原因。如果 order 确实是数据库中的表名,则可以按如下方式对其进行转义:select&nbsp;...&nbsp;from&nbsp;`order`&nbsp;...或者更好的是使用非保留的表名,如“订单”。
随时随地看视频慕课网APP

相关分类

Java
我要回答