sql - 名为 "order"的字段的 Doctrine 语法错误

标签 sql ajax jquery symfony

我有以下ajax调用

var prev_sibling = $(this).prev().attr("value");
var next_sibling = $(this).next().attr("value");
var order = (prev_sibling + next_sibling)/2; 
var data = {PID:element_id, TGID:parent_id, ORD:order};
$.ajax({
        type: "POST",
        data: data,
        url:"{{ path('v2_pm_patents_dragpatents') }}",
        cache: false
});

在我的行动中,我得到了订单并将其设置为这样

$order = $request->get('ORD');
$patent->setOrder($order);

但是 ajax 调用给了我以下错误

Syntax error or access violation: 1064 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 'order = '750' WHERE id = '0d0c0810-bc75-11e1-96a5-9787dec335c2'' at line 1 (500 Internal Server Error)

我正确地获取了发布数据,并且为我提供这些记录的查询也工作正常。

问题出在哪里?

有什么想法吗?

提前致谢

最佳答案

问题是 order 是 MySQL 中的保留字。如果您使用学说,您可以告诉它转义映射中的保留字,如下所示:

/** @Column(name="`order`", type="integer") */
private $order;

http://docs.doctrine-project.org/en/latest/reference/basic-mapping.html#quoting-reserved-words

关于sql - 名为 "order"的字段的 Doctrine 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11278457/

相关文章:

sql - unix 中是否有类似 sql 中的减号运算符的实用程序

javascript - 来自服务器的 AngularJS 绑定(bind)响应未在 View 中更新

ajax - JSF AJAX 验证 : execute ="@this" render ="@form" inconsistent depending on prior requests

php - sql datetime 与日期值比较

mysql - 对于 SQL 中的所有查询,表划分

php - Ajax、PHP、MySQL 返回 sql 表

jquery - 将鼠标悬停在 Google map 中的自定义叠加层上

javascript - 使用 jQuery 打印行

javascript - 创建一组元素的新实例

sql - 两个 SUM 查询在一起