我创建了一个 Ruby on Rails 应用程序只是为了向同事演示,然后删除了该应用程序,但我没有删除同样使用 Postgresql 创建的数据库。
我像这样进入 posgresql:
psql postgres
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
--------------------------------------+--------+----------+-------------+-------------+-------------------
GenerateApp_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
GenerateApp_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
GeneratorApp_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
GeneratorApp_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
Overtime_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
Overtime_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
RoutingApp_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
RoutingApp_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
dancortesPortfolio_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
dancortesPortfolio_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_documents_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_documents_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_proposal_development | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
freelance_camp_proposal_test | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/danale +
| | | | | danale=CTc/danale
template1 | danale | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/danale +
| | | | | danale=CTc/danale
(17 rows)
我想删除那些说 RoutingApp_development 和 test 的。
postgres=# DROP DATABASE RoutingApp_development;
ERROR: database "routingapp_development" does not exist
我在上面得到了那个错误。我试图在网上搜索为什么会发生这种情况,但我没有成功找到答案,请帮忙。
您需要将名称双引号。在 PostgreSQL 中,我们从不使用双引号。如果您遵循约定,PostgreSQL 会将不带引号的标识符转换为小写。在您的情况下,创建数据库的那个使用了双引号。
现在,标识符中有一个大写字母。
从现在开始,您必须对标识符进行双引号。
不是,
但,