Java org.postgresql.util.PSQLException:错误:语法错误位于或接近;7“;
我正在尝试在我的应用程序中创建私人聊天,但当我尝试创建表时,出现以下错误: org.postgresql.util.PSQLException:错误:位于或接近“7”的语法错误 职位:14 代码:Java org.postgresql.util.PSQLException:错误:语法错误位于或接近;7“;,java,sql,postgresql,Java,Sql,Postgresql,我正在尝试在我的应用程序中创建私人聊天,但当我尝试创建表时,出现以下错误: org.postgresql.util.PSQLException:错误:位于或接近“7”的语法错误 职位:14 代码: 您看到的错误可能来自于此: preparedStatement chat = conn.prepareStatement("CREATE TABLE " + rss.getInt("id") + "chat (...);"); 通常在SQL中,表名不能以数字开头。如果要用双引号括住表名,Postgr
您看到的错误可能来自于此:
preparedStatement chat = conn.prepareStatement("CREATE TABLE " + rss.getInt("id") + "chat (...);");
通常在SQL中,表名不能以数字开头。如果要用双引号括住表名,Postgres仍然允许这样做,但是每次查询表名时都需要双引号,这可能会很繁琐
一种解决方案是将数字放在表名的末尾,如:
preparedStatement chat = conn.prepareStatement("CREATE TABLE chat" + rss.getInt("id") + " (...);");
:
create table 7chat(x int);
请考虑从代码中创建表是否有意义。
create table 7chat(x int);
ERROR: syntax error at or near "7"
LINE 1: create table 7chat(x int);
^
create table "7chat"(x int);
-- works
create table chat7(x int);
--works