Php Drupal 7/Views mysql语法错误

Php Drupal 7/Views mysql语法错误,php,mysql,sql,drupal-7,drupal-views,Php,Mysql,Sql,Drupal 7,Drupal Views,我尝试过搜索,但没有找到与我的案例相匹配的好答案 我有一个由drupal管理的数据库结构。我希望在同一台服务器上的另一个上下文中使用该结构,生成一个php文件,该文件对db进行sql查询,并将结果获取到一个不由drupal管理的页面中(在这种特定情况下,drupal更像是内容管理器的用户界面,而不是网站设计的真正CMS) 我已经安装了视图,并设置了从php脚本所需的字段中提取数据的选项和条件 预览将准确显示我要查询的字段,查询如下所示: SELECT node.title AS node_tit

我尝试过搜索,但没有找到与我的案例相匹配的好答案

我有一个由drupal管理的数据库结构。我希望在同一台服务器上的另一个上下文中使用该结构,生成一个php文件,该文件对db进行sql查询,并将结果获取到一个不由drupal管理的页面中(在这种特定情况下,drupal更像是内容管理器的用户界面,而不是网站设计的真正CMS)

我已经安装了视图,并设置了从php脚本所需的字段中提取数据的选项和条件

预览将准确显示我要查询的字段,查询如下所示:

SELECT node.title AS node_title, node.nid AS nid, node.created AS node_created, 'node'       AS field_data_field_descrizione_node_entity_type, 'node' AS  field_data_field_web_node_entity_type, 'node' AS field_data_field_logo_node_entity_type
FROM 
{node} node
WHERE (( (node.type IN  ('collaborazioni')) ))
ORDER BY node_created DESC
我使用php脚本成功连接到完全相同的服务器和数据库,但当我发送查询时,我收到以下mysql\u错误:

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 '} node WHERE (( (node.status = '1') AND     (node.type IN ('collaborazioni')) )) ' at line 3

我真的不知道怎么了,也许你能帮我弄清楚?提前感谢您的帮助。

Drupal在视图预览查询中使用表别名。它在实际查询发送到数据库之前被替换。别名部分是
{node}
,它指向数据库中的节点表,但添加了在站点安装期间输入的表前缀。如果没有使用数据库前缀,则只需删除查询的
{node}
部分。如果您这样做了,那么您应该将
{node}
替换为
前缀\u node

因此,如果没有前缀,它应该是:

SELECT node.title AS node_title, node.nid AS nid, node.created AS node_created, 'node'       AS field_data_field_descrizione_node_entity_type, 'node' AS  field_data_field_web_node_entity_type, 'node' AS field_data_field_logo_node_entity_type
FROM 
node
WHERE (( (node.type IN  ('collaborazioni')) ))
ORDER BY node_created DESC
并使用前缀(当然,将查询的“前缀”部分替换为您使用的前缀):

尝试作为WHERE node.type输入('collaborazioni')
SELECT node.title AS node_title, node.nid AS nid, node.created AS node_created, 'node'       AS field_data_field_descrizione_node_entity_type, 'node' AS  field_data_field_web_node_entity_type, 'node' AS field_data_field_logo_node_entity_type
FROM 
prefix_node node
WHERE (( (node.type IN  ('collaborazioni')) ))
ORDER BY node_created DESC