Согласно документации, пока я не подключен к базе данных, я могу удалить базу данных в консоли, используя:
DROP DATABASE dbname;
Или я могу уронить его, используя инструмент-обертку dropdb
.
И то и другое выдает ошибку, говоря, что база данных не существует, но когда я в консоли и набираю команду \l
, я получаю список баз данных, включая ту, которую я хочу удалить.
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
---------------------------+-----------+----------+-------------+-------------+-----------------------
Blog_development | myusername | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
Blog_test | myusername | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
Имя базы данных - Blog_development (и та, что ниже). Я играл с рельсами и пытался учиться на онлайн-документации. Я хотел начать все заново и удалить все.
Однако при попытке удалить его, он говорит, что его не существует. Я новичок в PostgreSQL, поэтому я немного растерян, в документации об этой ошибке нет ничего, кроме того, что она появляется, когда ее не существует. Конечно, это существует, это прямо там.
источник
Ответы:
Ваша база данных была создана с использованием двойных кавычек, поэтому ее имя теперь чувствительно к регистру. Следовательно, теперь вам нужно всегда использовать двойные кавычки при ссылке на него:
Подробнее о цитируемых идентификаторах (имя базы данных является идентификатором, аналогичным имени столбца или таблицы) можно найти в руководстве:
http://www.postgresql.org/docs/current/static/sql-syntax-lexical.html. # SQL-синтаксических ИДЕНТИФИКАТОРЫ
источник