我正在尝试创建一个数据库,然后在其中创建一个表。我使用 docker-compose.yml 在 sql 文件中编写了查询以与 postgres 图像一起使用
当我使用 docker-compose build 然后使用 docker-compose up 时出现错误
“psql:/docker-entrypoint-initdb.d/init.sql:18:错误:未实现跨数据库引用:“real_estate.public.estate”postgres | 第1行:创建表real_estate.public.estate(”
这是我的 init.sql 文件
CREATE DATABASE "real_estate"
WITH OWNER "postgres"
ENCODING 'UTF8';
CREATE TABLE real_estate.public.estate (
estate_title TEXT,
estate_address TEXT,
estate_area TEXT,
estate_description TEXT,
estate_price TEXT,
estate_type TEXT,
estate_tag TEXT,
estate_date TEXT,
estate_seller_name TEXT,
estate_seller_address TEXT,
estate_seller_phone TEXT,
estate_seller_mobile TEXT,
estate_seller_email TEXT
);
Run Code Online (Sandbox Code Playgroud)
您收到该错误是因为您未连接到real_estate数据库。
我假设您已连接到postgres,因为这就是您通常运行的方式CREATE DATABASE。
您必须终止现有的数据库连接,然后启动与新创建的数据库的连接。只有这样您才可以在数据库中创建对象。
它的特点是不同的数据库严格分开,任何更改请求都会被拒绝。
如何最好地做到这一点取决于您运行脚本的方式。如果你用 运行它psql,一个简单的\c real_estate就可以了。
| 归档时间: |
|
| 查看次数: |
19140 次 |
| 最近记录: |