此处是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->表)
感谢您的帮助。
答案 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提供的公共对象外,我什么都不允许。