首页 > 解决方案 > 由于连字符,pq_query 语法错误。我怎么写这个?

问题描述

这不起作用

$query = "SELECT * FROM time-lords WHERE user='thedoctor'";

我收到此错误:

警告:pg_query():查询失败:错误:“-”或附近的语法错误

这个确实有效

$query = "SELECT * FROM time_lords WHERE user='thedoctor'";

所以我想问题是连字符。写这个的正确方法是什么?我已经尝试将列名包含在几乎所有内容中......“时间领主”、[时间领主]、“时间领主”,但似乎没有任何效果。

标签: phpsqlpostgresqlpg-query

解决方案


您可以使用双引号 ( ") 转义对象名称:

$query = "SELECT * FROM \"time-lords\" WHERE user='thedoctor'";

推荐阅读