无法在新数据库中创建表

时间:2019-06-04 22:00:36

标签: postgresql datagrip

此处是SQL的初学者,特别是使用PostgreSQL。我正在尝试为此处的课程做某事,但我一直收到错误消息,但不确定为什么。我已经创建了一个名为“游戏”的新数据库,并且正在尝试创建一个基本表。代码如下。

我收到的错误消息是[0A000]错误:未实现跨数据库引用:“ games.games_schema.player_data”位置:14

我可以使用postgreSQL将表放在默认数据库中,但是为什么在尝试在新数据库中专门创建该表时会有问题?

创建数据库游戏;

创建表格games.games_schema.Player_Data (Player_ID int, Player_Name VARCHAR(255), Player_System VARCHAR(255));

我认为我建立create table语句的方式是告诉服务器在该位置创建表。 (数据库-> DBschema->表)

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您创建了游戏数据库,但未在其中创建games_schema。它将仅创建架构Public(除非修改了默认模板)。解决方案是在“游戏”数据库中创建“ games_schema”,或在公共架构中创建数据库对象。
选项1:创建架构。

create schema games_schema; 
create table games_schema.player_data( ... );

选项2:使用公共模式。

create table player_data( ... );

我的选择是选项1,因为除了扩展和Postgres提供的公共对象外,我什么都不允许。