【发布时间】:2015-09-28 02:17:34
【问题描述】:
我想在 postgresql 的数据库中创建一个简单的表。
从文档中我有CREATE TABLE will create a new, initially empty table in the current database. The table will be owned by the user issuing the command.
用这个命令
CREATE TABLE *table_name*;
我以为我得到了一个新的空表。但是 psql 抛出 ERROR: syntax error at or near ";"。当我使用一个空的参数列表时:
CREATE TABLE *table_name*();
psql告诉我表是通过
创建的postgres=# create table *table_name*();
CREATE TABLE
但是 \l 显示没有显示新创建的表。而且它也无法使用 psql -d table_name -U user_name 登录。有人可以帮忙吗?
【问题讨论】:
-
你真的需要一个没有列的表吗?通常将 empty 表称为没有记录的表。没有柱子的有点奇怪。
-
您必须添加列。或者因为你使用 Rails,所以用迁移来做。如果你有一个想要集成的现有数据库,你会想使用原始 SQL。
-
rails 也可以通过
rake db:create或其他方式为您创建数据库。 -
哦,太好了,我不知道。我一定会检查出来