首页 > 代码库 > Hibernate 自动更新表出错 建表或添加列,提示标识符无效

Hibernate 自动更新表出错 建表或添加列,提示标识符无效

  如Oracle 数据库下报错:

  create table db_meta_web.user (id varchar2(255 char) not null, account varchar2(255 char), department varchar2(255 char), email varchar2(255 char), mobile varchar2(255 char), name varchar2(255 char), password varchar2(255 char), primary key (id))

  此处表名user 和字段名password 字段是保留关键字,所以报错标识符无效。

  在这种情况下,需要自己将ddl 语句放入数据库连接工具中,用数据库相应的标识符引号引起来,如MySQL 是`,Oracle 是"。自己去运行,另外需要注意字段大小写和自己定义的字段名要一致。

  上面的例子,ddl 语句改为:

  create table db_meta_web."USER" (id varchar2(255 char) not null, account varchar2(255 char), department varchar2(255 char), email varchar2(255 char), mobile varchar2(255 char), name varchar2(255 char), "PASSWORD" varchar2(255 char), primary key (id))

 

Hibernate 自动更新表出错 建表或添加列,提示标识符无效