2014-08-29 43 views
1

每当我从pgAdmin创建一个新的数据库或使用命令行(使用CREATE DATABASE database_name)时,它不是空的。为什么我的新PostgreSQL数据库不是空的?

它包含一些表格,这些表格是我工作的以前项目的一部分。

我还不是很熟悉Psql,所以我不知道我在做什么错。

回答

4

您可能在数据库中创建了对象template1

Quote from the manual

默认情况下,新数据库将通过克隆标准系统数据库template1来创建。通过编写TEMPLATE名称可以指定不同的模板。特别是,通过编写TEMPLATE template0,您可以创建一个纯数据库,其中只包含您的PostgreSQL版本预定义的标准对象。如果您希望避免复制可能已添加到template1的任何安装本地对象,这非常有用。

所以,当你运行create database东西都在template1数据库将被复制到新的数据库。

连接到template1数据库并删除所有不想要的对象。

+0

谢谢你!那样做了。我似乎无法找到正确的问题来问问谷歌。 非常感谢! – DigitalDouble 2014-08-29 09:59:43