0

我正在使用 Evolutions 来构建数据库。我1.sql的是:

# User schema
# --- !Ups
create table user (
  id` BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  first_name TEXT NOT NULL,
  last_name TEXT NOT NULL,
  mobile BIGINT NOT NULL,
  email TEXT NOT NULL
)
# --- !Downs
drop table user

当我开始运行我的网络应用程序时,我从 Evolutions 收到以下错误消息:

我们收到以下错误:

错误:“用户”位置或附近的语法错误:14 [错误:0,SQLSTATE:42601],尝试运行此 SQL 脚本时:

我很难过,因为据我所知,它在语法上是可以的。

(图片在这里

(我的网络应用是play-slick3-steps应用,但使用 PostgreSQL 作为数据库而不是 MySQL)

4

1 回答 1

4

user是 Postgres 中的保留字。您可以使用引号 ( "s) 转义它:

create table "user" (
  id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  first_name TEXT NOT NULL,
  last_name TEXT NOT NULL,
  mobile BIGINT NOT NULL,
  email TEXT NOT NULL
)

或者,更好的是,将其名称更改为不是保留字的名称,例如users(复数)。

于 2016-03-21T17:21:37.557 回答