-- -----------------------------------------------------------------
-- Создание таблиц

-- Таблица авторов
create table author (
	author_id bigint generated always as identity primary key,
	name varchar(150) no null check (length(name) >= 3),
	description text check (length(description) >= 30)
);

-- Таблица категорий книг
create table book_category (
	category_id int generated always as identity primary key,
	name varchar(150) not null check (length(name) >= 2)
);

-- Таблица книг
create table book (
	book_id bigint generated always as identity primary key,
	name varchar(255) not null check (length(name) >= 2),
	author_id bigint not null references author(author_id),
	description text check (length(description) >= 30),
	cover varchar(255),
	category_id int not null references book_catefory(category_id)
);

-- -----------------------------------------------------------------
-- Создание временных таблиц и вставка данных

create temp table something (id serial, name text);

insert into something (name) values('hello');
insert into something (name) values('dratuti');

-- -----------------------------------------------------------------
-- Редактирование таблиц

alter table 

-- -----------------------------------------------------------------
-- Удаление таблиц

drop table if exists author, book_category, book;

-- -----------------------------------------------------------------
-- Вставка данных

insert into author (name, description) values (
	'Михаил Шолохов',
	'Великий русский советский писатель, журналист и киносценарист.'
), (
	'Лусиану Рамальо',
	'Автор замечательных книг по языку программирования Python'
);

-- -----------------------------------------------------------------
-- Выборка данных

-- Выбрать все данные из таблицы. Так нельзя делать в prodaction коде.
select * from author;
table author order by name desc limit 1;

select name as Имя, description as Описание from book;

-- Преобразование к верхнему регистру
select upper(name) as Имя, lower(description) as Описание from book;

-- Можно сослаться на конретную таблицу через .
-- Последовательность: база данных -> схема -> таблица
select book.name as Имя from rroom_db.public.book;

show search_path;

-- -----------------------------------------------------------------
-- Заметки

-- Остановился на 16 главе 

-- -----------------------------------------------------------------
-- Мусор

select |/25;



