Для этого можно использовать statamenet DDL CREATE TABLE IF NOT EXISTS . Например,
#standardSQL
CREATE TABLE IF NOT EXISTS mydataset.newtable (x INT64, y STRUCT, b BOOL>)
OPTIONS(
expiration_timestamp=TIMESTAMP "2020-01-01 00:00:00 UTC",
description="a table that expires in 2020",
labels=[("org_unit", "development")]
)
или через командную строку
bq query --use_legacy_sql=false '
CREATE TABLE IF NOT EXISTS mydataset.newtable (x INT64, y STRUCT, b BOOL>)
OPTIONS(
expiration_timestamp=TIMESTAMP "2020-01-01 00:00:00 UTC",
description="a table that expires in 2020",
labels=[("org_unit", "development")]
)'
Ну, эта проблема связана с тем, что вы используете зарезервированные слова SQL, такие как таблица user
.
Вы можете посмотреть зарезервированные слова SQL для Derby , и у вас есть две опции
Переименовать user
таблицу в user_account
или имя таблицы, которую вы хочет.
@Table(name = "user_account")
public class User { ... }
Принудительно использовать user
имя таблицы.
@Table(name = "\"user\"")
public class User { ... }