gpt4 book ai didi

postgresql 无法在模式中创建表

转载 作者:行者123 更新时间:2023-11-29 13:25:47 25 4
gpt4 key购买 nike

我正在使用此脚本创建架构/数据库/...:

CREATE ROLE testuser LOGIN PASSWORD 'password';
CREATE TABLESPACE testtablespace OWNER testuser LOCATION '/pgdata/pg94/testtablespace';
CREATE SCHEMA testschema;
ALTER SCHEMA testschema OWNER TO testuser;
CREATE DATABASE testdb WITH TABLESPACE testtablespace ENCODING 'UNICODE' LC_COLLATE 'C' LC_CTYPE 'C' TEMPLATE template0 OWNER testuser;
ALTER DATABASE testdb SET search_path TO testschema, public;
ALTER ROLE testuser SET search_path TO testschema, public;
GRANT ALL ON DATABASE testdb TO testuser;
GRANT ALL ON SCHEMA testschema TO testuser;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA testschema TO testuser;
ALTER ROLE testuser SET default_tablespace = testtablespace;

当我使用命令 psql -U testuser testdb 登录并执行命令 select schema_name from information_schema.schemata ; 时。更糟糕的是我不能在这个模式中创建表

testdb=> create table testschema.test (test varchar(10));
ERROR: schema "testschema" does not exist

请问我应该配置什么来查看模式并在 int 中创建表?

最佳答案

CREATE SCHEMA 始终适用于当前数据库。您已经在当前数据库(可能是 postgres)中创建了 testschema,而不是在 testdb 中。您应该连接到 testdb,然后创建新模式。

关于postgresql 无法在模式中创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34025344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com