This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
works:programmer:db-postgres:index [2020/03/03 14:02] Chugreev Eugene |
works:programmer:db-postgres:index [2020/05/05 15:34] (current) Chugreev Eugene |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Полезная информация по Postgres SQL ====== | ====== Полезная информация по Postgres SQL ====== | ||
+ | ===== Соеденение c БД ===== | ||
Управлять Postgres можно через утилку psql запускается она так | Управлять Postgres можно через утилку psql запускается она так | ||
- | Для локалки : < | + | Для локалки : < |
- | Для удаленки : < | + | Для удаленки : < |
- | ====== Пользователи и Роли PGSQL ====== | + | ===== Пользователи и Роли PGSQL ===== |
<code sql> | <code sql> | ||
+ | -- Список пользователей | ||
+ | \du | ||
-- Создать пользователя с паролем | -- Создать пользователя с паролем | ||
CREATE ROLE " | CREATE ROLE " | ||
Line 21: | Line 24: | ||
-- Разрешить пользователю заходить в Базу | -- Разрешить пользователю заходить в Базу | ||
GRANT ALL ON DATABASE ИМЯБАЗЫ TO ПОЛЬЗОВАТЕЛЬ; | GRANT ALL ON DATABASE ИМЯБАЗЫ TO ПОЛЬЗОВАТЕЛЬ; | ||
+ | |||
+ | -- Отобрать права у пользователя | ||
+ | REVOKE ALL PRIVILEGES ON DATABASE ИМЯБАЗЫ FROM ПОЛЬЗОВАТЕЛЬ; | ||
+ | |||
</ | </ | ||
Line 27: | Line 34: | ||
-- Посмотреть список баз | -- Посмотреть список баз | ||
\l | \l | ||
+ | -- Сменить Базу | ||
+ | \c ИМЯБАЗЫ | ||
-- Создать базу данных | -- Создать базу данных | ||
- | CREATE DATABASE | + | CREATE DATABASE |
</ | </ | ||
+ | |||
+ | ===== Индексы ===== | ||
+ | <code sql> | ||
+ | -- Посмотреть список всех индексов | ||
+ | SELECT tablename, indexname, indexdef FROM pg_indexes WHERE schemaname = ' | ||
+ | |||
+ | -- Создать первичный ключ | ||
+ | ALTER TABLE таблица ADD PRIMARY KEY (id) | ||
+ | |||
+ | -- Создать обычный BTREE ключ | ||
+ | CREATE INDEX ON таблица (id) USING BTREE | ||
+ | |||
+ | -- Создать уникальный lowercase индекс | ||
+ | CREATE UNIQUE INDEX users_username_lower ON users ((lower(username))); | ||
+ | </ | ||
+ | |||
+ | ===== Битовые операции ===== | ||
+ | <code sql> | ||
+ | -- Где содержит бит 1 | ||
+ | WHERE " | ||
+ | -- Где не сожержит бит 2 | ||
+ | WHERE " | ||
+ | |||
+ | -- Установить 1й бит | ||
+ | SET " | ||
+ | |||
+ | -- Снять 2й бит | ||
+ | SET " | ||
+ | |||
+ | </ | ||
+ | |||
+ |