Как да създадете база данни в PostgreSQL

⚡ Умно обобщение

PostgreSQL Операциите за създаване на база данни ви позволяват да изградите нова база данни, използвайки или командния ред на psql, или графичния инструмент pgAdmin. Операторът CREATE DATABASE приема и опции за собственик, шаблон, кодиране, сравнение, таблично пространство и ограничение на връзките.

  • 💻 Командна линия: Отворете SQL Shell (psql), свържете се със сървъра и изпълнете CREATE DATABASE, за да създадете нова база данни.
  • 🖱️ Графичен потребителски интерфейс на pgAdmin: Щракнете с десния бутон върху Бази данни в дървото на обектите, изберете Създаване, дайте име на базата данни и я запазете визуално.
  • 📝 Основен синтаксис: Минималната команда е CREATE DATABASE databasename, която изгражда база данни с настройки по подразбиране.
  • Пълни опции: СОБСТВЕНИК, ШАБЛОН, КОДИРАНЕ, LC_COLLATE, LC_CTYPE, TABLESPACE и CONNECTION LIMIT персонализират новата база данни.
  • 🔌 Свържете се и проверете: Използвайте \l за да изброите базите данни и \c име_на_база_данни за да се свържете със създадената от вас.
  • ⚠️ Често срещани грешки: Внимавайте за грешки „createdb не е намерен“, „сървърът не работи“, „липсваща роля“ и „отказан достъп“.

Как да създадете база данни в PostgreSQL

Синтаксисът за създаване на база данни PostgreSQL is

CREATE DATABASE databasename

Да се ​​научим да настройваме PostgreSQL и как да създадете база данни в PostgreSQL командния ред и GUI

PSQL команден ред за създаване на база данни (SQL Shell)

Стъпка 1) Отворете SQL Shell

PSQL команден ред за създаване на база данни

Стъпка 2) Натиснете enter пет пъти, за да се свържете с DB

PSQL команден ред за създаване на база данни

Стъпка 3) Въведете командата

CREATE DATABASE guru99;

PSQL команден ред за създаване на база данни

Стъпка 4) Въведете команда \l, за да получите списък с всички бази данни

PSQL команден ред за създаване на база данни

Стъпка 5) За да се свържете с база данни използвайте PostgreSQL команда за база данни

\c guru99

PSQL команден ред за създаване на база данни

Бързи промени в guru99, което означава, че сме свързани към база данни guru99 и можем да изпълняваме операции като създаване на таблица, задействане, изпълнение SQL върху него.

PostgreSQL Създайте база данни с помощта на pgAdmin

Стъпка 1) В дървото на обектите щракнете с десния бутон и изберете създаване на база данни, за да създадете база данни в Postgres

PostgreSQL Създайте база данни с помощта на pgAdmin

Стъпка 2) В изскачащия прозорец

  1. Въведете име на база данни
  2. Коментирайте, ако има база данни – по избор
  3. Кликнете върху Запазване

PostgreSQL Създайте база данни с помощта на pgAdmin

Стъпка 3) DB се създава и показва в дървото на обектите.

PostgreSQL Създайте база данни с помощта на pgAdmin

Стъпка 4) Десният панел ви дава SQL, използван за създаване на базата данни.

PostgreSQL Създайте база данни с помощта на pgAdmin

Пълен синтаксис за създаване на база данни

Ето пълния синтаксис за създаване на DB PostgreSQL

CREATE DATABASE db_name
OWNER =  role_name
TEMPLATE = template
ENCODING = encoding
LC_COLLATE = collate
LC_CTYPE = ctype
TABLESPACE = tablespace_name
CONNECTION LIMIT = max_concurrent_connection
Опция Descriptйон
db_name Използвайте тази опция, за да посочите името на новата база данни, която искате да създадете. Въпреки това, трябва да сте сигурни, че База данни трябва да е уникален, защото Ако се опитате да създадете нова база данни със същото име като съществуваща база данни, PostgreSQL ще покаже грешка.
име_на_роля Използвайте този параметър, за да дефинирате името на ролята за потребителя, който ще притежава новата база данни. По подразбиране е postgres
Шаблон Можете да посочите име на шаблон на база данни, от който искате да създадете новата база данни.
Encoding Този параметър позволява указване на кодиране на набор от знаци за новата база данни. По подразбиране е UTF8
Съпоставяне Параметърът за съпоставяне указва реда на сортиране на низове, които влияят на резултата от клаузата ORDER BY, докато използвате оператор SELECT.
CTYPE Той определя класификацията на знаците за новата база данни. Влияе върху категоризацията, например цифра, долна и горна.
име_на_пространство за таблици С помощта на тази опция можете да посочите името на табличното пространство за новата база данни. По подразбиране е табличното пространство на базата данни на шаблона.
max_concurrent_connection Използвайте тази опция, за да посочите максималния брой едновременни връзки към новата база данни. По подразбиране е -1, т.е. неограничен.

Често срещани грешки при използване на команда createdb

грешка Descriptйон
команда createdb не е намерена. Този вид грешка може да възникне, когато PostgreSQL не е инсталиран правилно. По това време трябва да изпълните команда createdb от вашия PostgreSQL инсталационен път.
Няма такъв файл в сървъра, който да се изпълнява локално и да приема връзки в сокета на домейна на Unix. Тази грешка възниква, когато PostgreSQL Сървърът не е стартиран правилно или не е стартиран там, където команда createdb иска да стартира.
ФАТАЛНА роля „usr име“ не съществува Тази грешка може да възникне, ако PostgreSQL се създава потребителски акаунт, който е различен от системните потребителски акаунти.
Разрешението за създаване на база данни е отказано Ако PostgreSQL акаунтът е създаден няма разрешение за създаване на база данни В този случай трябва да дадете разрешение на асоциираните потребители за достъп до командата за създаване.

Въпроси и Отговори

PostgreSQL създава база данни с име postgres по подразбиране по време на инсталацията. Тя служи като цел за свързване по подразбиране за инструменти и суперпотребители и се използва като работно пространство, преди да създадете свои собствени бази данни.

Използвайте командата ALTER DATABASE, например ALTER DATABASE oldname RENAME TO newname. Трябва да сте свързани към различна база данни и никоя друга сесия не може да използва базата данни, която преименувате.

Шаблонната база данни е модел, който PostgreSQL копия при създаване на нова база данни. template1 е шаблонът по подразбиране, така че всеки обект, добавен към него, се появява във всяка нова база данни. template0 е чисто, непроменяемо копие.

Изкуственият интелект може да генерира пълен оператор CREATE DATABASE от обикновено описание, като правилно попълва опциите за собственик, кодиране и сравнение. Той също така обяснява всяка клауза, helping начинаещите избягват синтактични и конфигурационни грешки.

Да. Изкуственият интелект може да разчете грешки като „отказано разрешение“ или „роля не съществува“, да обясни причината и да предложи точната команда GRANT или роля, необходима за бързото разрешаване на проблема.

Обобщете тази публикация с: