Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
ShulV authored Oct 18, 2022
1 parent 9b37d86 commit a2fd865
Showing 1 changed file with 41 additions and 3 deletions.
44 changes: 41 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
# CRUD приложение
# CRUD приложение для работы с данными книг и читателей
CRUD app. Tech stack: java spring, thymeleaf, HTML, CSS, postgres, JDBC Template

## Реляционная модель БД:

![Image alt](https://github.com/ShulV/CRUD-app-1/blob/main/doc_images/db_structure.png)

## Скрипты работы с базой данных (PostgreSQL):

### Код генерации БД (DB generation SQL script):

```
CREATE TABLE people(
id integer NOT NULL GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
"name" varchar(50) NOT NULL,
Expand All @@ -24,50 +25,87 @@ CREATE TABLE books(
date date NOT NULL,
people_id int DEFAULT NULL REFERENCES people(id) ON DELETE Set null ON UPDATE Cascade
);
```

### Пример добавления пользователей:

```
INSERT INTO public.people(
name, patronymic, surname, birthday)
VALUES ('Виктор', 'Максимович', 'Шульпов', '14.07.2001'),
('Илья', 'Игоревич', 'Шинтяпин', '15.05.2001'),
('Максим', 'Владимирович', 'Иванов', '16.10.2000');
```

### Пример добавления книг:

```
INSERT INTO public.books(
name, author, date)
VALUES ('Война и мир', 'Лев Толстой', '01.01.1862'),
('Отцы и дети', 'Иван Тургенев', '01.01.1868'),
('Старик и море', 'Эрнест Хемингуэй', '01.01.1952');
```

### Выборка всех людей:

```
SELECT * FROM People;
```

### Выборка всех книг:

```
SELECT * FROM Books;
```

### Выборка человека по id:

```
SELECT * FROM People WHERE id=?;
```

### Выборка книги по id:

```
SELECT * FROM Books WHERE id=?;
```

### Пример выборки человека, который взял книгу:

```
select p.id, p.name, p.patronymic, p.surname, p.birthday from people as p
join books as b
on p.id = b.person_id
where b.id = 4;
```

### Пример редактирования данных человека:

```
update people set name = ?, patronymic = ?, surname = ?, birthday = ?, email = ? where id = ?;
```

### Пример редактирования данных книги:

```
update books set name = ?, author = ?, date = ? where id = ?;
```

### Пример удаления человека по id:

```
DELETE FROM People WHERE id = ?;
```

### Пример освобождения книги:

```
UPDATE Books SET person_id = NULL WHERE id = ?;
```

### Пример присваивания книги:
UPDATE Books SET person_id = ? WHERE id = ?;

```
UPDATE Books SET person_id = ? WHERE id = ?;
```

0 comments on commit a2fd865

Please sign in to comment.