Как хранятся имена сущностей в PSQL?

В PostgreSQL (PSQL) имена сущностей, такие как таблицы, столбцы, индексы, представления и функции, хранятся в системном каталоге базы данных. Системный каталог содержит базовую информацию о каждой сущности, включая ее имя, тип и метаданные.

Имена сущностей в PostgreSQL могут состоять из следующих символов:
- Буквенно-цифровые символы (a-z, A-Z, 0-9)
- Знак подчеркивания (_)
- Знак доллара ($)

Важно отметить, что в PostgreSQL имена сущностей чувствительны к регистру по умолчанию. Это означает, что имена в верхнем регистре считаются отличными от имени в нижнем регистре. Например, таблицы "myTable" и "mytable" будут считаться разными таблицами.

Однако, существует возможность использовать кавычки ("") для создания имен сущностей, которые чувствительны к регистру. Если имя заключено в двойные кавычки, PostgreSQL будет рассматривать его как регистронезависимое имя. Например, "myTable" и "mytable" будут считаться одним и тем же именем.

При создании новой сущности в PostgreSQL, можно использовать различные команды, такие как CREATE TABLE для таблиц, CREATE INDEX для индексов и CREATE VIEW для представлений. Все эти команды принимают имя сущности в качестве параметра.

Например, чтобы создать новую таблицу с именем "myTable" и двумя столбцами "id" и "name", вы можете использовать следующую команду SQL:

CREATE TABLE "myTable" (
"id" serial primary key,
"name" text
);

В этом примере мы используем двойные кавычки, чтобы создать имя сущности, которое чувствительно к регистру. Таким образом, "myTable" и "mytable" будут считаться разными таблицами.

В заключение, имена сущностей в PostgreSQL хранятся в системном каталоге базы данных и могут быть чувствительными к регистру или регистронезависимыми в зависимости от того, были ли они заключены в кавычки.