/
nindp
/
BookLib
Обзор
Документация
Войти
/
nindp
/
BookLib
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
BookLib.sql
626 строк
364 KB
natali
last-Commit
27 апр 2024, 16:48
27 апр 2024, 16:48
01fcb81
Код
Авторство
О чём код?
-- phpMyAdmin SQL Dump -- version 5.2.0 -- https://www.phpmyadmin.net/ -- -- Хост: 127.0.0.1:3306 -- Время создания: Апр 25 2024 г., 22:54 -- Версия сервера: 8.0.30 -- Версия PHP: 8.0.22 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; START TRANSACTION; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- База данных: `BookLib` -- -- -------------------------------------------------------- -- -- Структура таблицы `app_reviews` -- CREATE TABLE `app_reviews` ( `id` bigint UNSIGNED NOT NULL, `content` text, `count_star` smallint NOT NULL, `user_id` bigint UNSIGNED NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `app_reviews` -- INSERT INTO `app_reviews` (`id`, `content`, `count_star`, `user_id`, `created_at`, `updated_at`) VALUES (1, 'Приложение восхитительное!', 5, 2, '2024-04-25 16:47:42', '2024-04-25 16:47:42'), (2, 'Я в восторге от данного приложения!', 5, 1, '2024-04-25 16:48:11', '2024-04-25 16:48:11'), (3, 'Очень неплохое приложение, правда стоит добавить больше книг', 4, 3, '2024-04-25 16:49:30', '2024-04-25 16:49:30'); -- -------------------------------------------------------- -- -- Структура таблицы `books` -- CREATE TABLE `books` ( `id` bigint UNSIGNED NOT NULL, `author` varchar(255) NOT NULL, `title` varchar(255) NOT NULL, `content` text, `description` text NOT NULL, `path_to_image` varchar(255) NOT NULL, `path_to_audio` varchar(255) DEFAULT NULL, `type` varchar(255) NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `books` -- INSERT INTO `books` (`id`, `author`, `title`, `content`, `description`, `path_to_image`, `path_to_audio`, `type`, `created_at`, `updated_at`) VALUES (1, 'Джейн Остин', 'Гордость и предубеждение (на английском языке)', NULL, 'Социальный роман Джейн Остен «Гордость и предубеждение», опубликованный в 1813 году, является одним из самых известных произведений английской литературы. Он рассказывает историю любви Элизабет Беннет и Фицуильяма Дарси, которые находят друг друга после преодоления многочисленных, особенно внутренних предубеждений. Остен описывает не только личностное развитие возлюбленных. Ее роман также описание быта английской земельной аристократии XIX века.', 'http://localhost:8000/storage/images/BSAklPUdJjdrNc0vfteTcfpmc4FZ7NUuZVu9mnUN.jpg', 'http://localhost:8000/storage/audio/1et260S4XIg3qhu6jrtzplhnhJzRyhu0JdxrhFQk.mp3', 'audio', '2024-04-25 14:26:50', '2024-04-25 14:26:50'), (2, 'Шарлотта Бронте', 'Джейн Эйр (на английском языке)', NULL, '«Джейн Эйр» – это роман, повествующий о жизни молодой девушки-сироты Джейн Эйр, которая сталкивается с различными трудностями, переживает любовь, сердечные страдания и самопознание. Она влюбляется в своего работодателя, мистера Рочестера, у которого есть тёмная тайна, и ей приходится выбирать между любовью к нему и собственными принципами.', 'http://localhost:8000/storage/images/EnbXDTHMmcDfbbmqaE6muvRM4oUumBl26ct4tqM8.jpg', 'http://localhost:8000/storage/audio/HEZQ030bZae9r5UOEx7cOr1T01ZnYR0YGw7qtsJN.mp3', 'audio', '2024-04-25 14:29:44', '2024-04-25 14:29:44'), (3, 'А.С. Пушкин', 'Евгений Онегин', NULL, 'Евгений Онегин – повествовательный роман в стихах, написанный великим русским писателем Александром Пушкиным. Сюжет вращается вокруг жизни главного героя, Евгения Онегина, изнеженного и высокомерного молодого человека, который получает в наследство имение и переезжает в деревню, где встречает и отвергает девушку по имени Татьяна Ларина, однако позже осознаёт свою любовь к ней, что приводит к трагическим последствиям.', 'http://localhost:8000/storage/images/bIJP9AfoGdGxakV0AImm4ma2dN7TMc6jnhc4FU0l.jpg', 'http://localhost:8000/storage/audio/NvW2mQJlpEdnLagz0Lx0DOgp72c0vGNMSRmdkiOW.mp3', 'audio', '2024-04-25 14:46:55', '2024-04-25 14:46:55'), (4, 'А.С. Пушкин', 'Капитанская дочка', NULL, '«Капитанская дочка» — повесть А. С. Пушкина, в основу которой легло историческое событие Пугачёвского бунта.', 'http://localhost:8000/storage/images/xkF68wV6zp1XDYnsuzc6jvq6Vul8Th3fj3u3ykpe.jpg', 'http://localhost:8000/storage/audio/YDDUegDbAkU9YDOSNOvlAjTUNlyEwyy4KAkubaa1.mp3', 'audio', '2024-04-25 14:48:36', '2024-04-25 14:48:36'), (5, 'Михаил Пришвин', 'Кладовая солнца', NULL, '«Кладовая солнца» — поучительный рассказ о взаимоотношениях брата и сестры, в котором показано, насколько важно слышать друг друга и идти на компромиссы.', 'http://localhost:8000/storage/images/IaNYuGB5dW7RKSNJHnhTJQROf8Tn146QlCdhHRRS.jpg', 'http://localhost:8000/storage/audio/pFkbEY92JIzKqu810HQPvmOdKfNN2Eh5VOFXphVJ.mp3', 'audio', '2024-04-25 14:50:16', '2024-04-25 14:50:16'), (7, 'Л.Н. Толстой', 'Крейцерова Соната', NULL, '«Крейцерова соната» — повесть Льва Толстого, опубликованная в 1890 году и сразу подвергнутая цензуре царскими властями. Книга провозглашает идеал воздержания и описывает от первого лица гнев ревности. Название повести дала Соната № 9 для скрипки и фортепиано Людвига ван Бетховена, посвящённая французскому скрипачу Родольфу Крейцеру.', 'http://localhost:8000/storage/images/7GLlm8ZpqoukmrGKQb4pdxX0VKBs3eIrJ47I6Pka.jpg', 'http://localhost:8000/storage/audio/VftNnrOliz89WJ2v4lkIgpyEYhJbyNXsM94tXAbo.mp3', 'audio', '2024-04-25 14:52:27', '2024-04-25 14:52:27'), (9, 'И.С. Тургенев', 'Отцы и дети', NULL, 'Роман стал самым обсуждаемым произведением 60-х годов XIX века. Базаров был воспринят как воплощение нового поколения, став примером для подражания среди молодёжи 1860-х годов. В литературоведении благодаря образу Базарова появился тип «нового человека».', 'http://localhost:8000/storage/images/dIf97bwtxGIV95alY9D6cxmCSxLXIXVvF6ZHBoyX.jpg', 'http://localhost:8000/storage/audio/QPfp6Cfk0SRGIGzGi0Wx4RxrBmUcPMqJjEhl6dxv.mp3', 'audio', '2024-04-25 14:54:33', '2024-04-25 14:54:33'), (10, 'Ф.М. Достоевский', 'Преступление и наказание', NULL, 'В романе рассказывается об отчуждении студента Раскольникова, который решает совершить идеальное преступление, чтобы философски доказать своё превосходство над другими. В романе прослеживаются глубины его душевного распада, когда он приходит к пониманию психологических последствий того, что он убийца.', 'http://localhost:8000/storage/images/uZBLVUkrgpeXYiBgQ18e9p5YPm4jdGxWTVTz3R50.jpg', 'http://localhost:8000/storage/audio/eGfno4R5fsSb1OZUN9z4zv1OSjCeTKPQ3bYOoTml.mp3', 'audio', '2024-04-25 14:56:11', '2024-04-25 14:56:11'), (11, 'А.С. Пушкин', 'Сказка о рыбаке и рыбке', NULL, 'Золотая рыбка - персонаж сказочный, умеющий говорить человеческим языком и вести диалог, терпеливая, дружелюбная, добрая, бескорыстная и честная, наделена способностью исполнять три желания. Ответственная, спокойная, а так же справедливая. Старик - рыбак, человек мягкий, вежливый, добрый и, к сожалению, слабовольный, уступчивый, не имеющий своего слова.', 'http://localhost:8000/storage/images/4YeLdaAJhnpRyFIfGxab8wyRISJmDogcpyfMw2tm.jpg', 'http://localhost:8000/storage/audio/JdWpxTm2RO014v1aEK2wCxlpG7z42Fpr7UBCaqmj.mp3', 'audio', '2024-04-25 14:57:46', '2024-04-25 14:57:46'), (12, 'А.П. Чехов', 'Страшная ночь', NULL, 'После спиритического сеанса, на котором дух Сенеки предсказал смерть этой же ночью, страшно просто в темноте находиться. Но когда в своей родной и безопасной комнате увидишь гроб, последствия могут быть очень плачевными, а уж когда это происходит неоднократно.', 'http://localhost:8000/storage/images/3Tyegb1sxo92a6prd6lIjnsexWKzWvobUyxuQgex.jpg', 'http://localhost:8000/storage/audio/llctO4Gw87TPniAz5oVjQOOMLLZNT4jKMi4t6ExF.mp3', 'audio', '2024-04-25 15:00:11', '2024-04-25 15:00:11'), (14, 'А.А. Тарановский', 'Действуй. Рискуй. Добивайся.', NULL, '«Действуй! Рискуй! Добивайся!» — книга Андрея Александровича Тарновского. В книге говорится: «Никогда не знаешь, на какие риски готов пойти ты, пока не встретишь ту самую! Время действовать!» Книга основана на реальных событиях.', 'http://localhost:8000/storage/images/oY4dqGnwogWSLHyvdkNiaELHwKtd8jSMPTdmnIeX.jpg', 'http://localhost:8000/storage/audio/fWB7PzlkVkkemj2SpyiDY3IAnLey4XUo3obNNW39.mp3', 'audio', '2024-04-25 15:01:53', '2024-04-25 15:01:53'), (15, 'А.П. Чехов', 'Толстый и Тонкий', NULL, 'На вокзале Николаевской железной дороги встретились два давних друга. Один из них был толстый, а другой — тонкий. Тонкого звали Порфирий — он только что сошёл с поезда, выйдя со своей женой Луизой и сыном Нафанаилом. Толстого звали Миша — он узнал тонкого и тут же его поприветствовал. Друзья начали разговаривать. Но вскоре, когда Тонкий узнал чин, до которого дослужился давний друг, Порфирий стал разговаривать с ним будто снизу вверх. Это расстраивает Мишу, и, попрощавшись рукопожатием, Миша уходит.', 'http://localhost:8000/storage/images/6QQME0j60T5mOMtbSfpkCZkICVi1BRu67YPy421Q.jpg', 'http://localhost:8000/storage/audio/jP5iEVObL4cjwXmSh5UQWRlKxFUYYmm0tdDL3z2Y.mp3', 'audio', '2024-04-25 15:04:07', '2024-04-25 15:04:07'), (16, 'Эрнст Гофман', 'Щелкунчик', NULL, 'Щелкунчик - герой волшебной повести Эрнста Гофмана. Это яркая игрушка, вырезанная из дерева - неуклюжий коротышка в военной форме. Если потянуть его за плащ, он откроет рот и расколет вложенный орешек. Ночью персонаж оживает и обретает дар речи. За неказистой наружностью скрывается заколдованный принц Кукольного королевства. У Щелкунчика добрая душа и храброе сердце.', 'http://localhost:8000/storage/images/8nAhzhoYb8VGTbLlCNP7a2v6nR25pUNOSNJWsAj9.jpg', 'http://localhost:8000/storage/audio/8rteyuJHlOtInv2tXrPLL4xPcZ9qPdiWRvFhquRE.mp3', 'audio', '2024-04-25 15:05:49', '2024-04-25 15:05:49'), (17, 'Джейн Остин', 'Эмма (на английском языке)', NULL, '21-летняя провинциалка Эмма Вудхаус красива, богата, остроумна и считает, что прекрасно разбирается в людях. Она решает, что никогда не выйдет замуж и не оставит отца одного. Эмма находит себе новую компаньонку — сироту Гарриет Смит — и теперь, используя все свои хитрости, пытается устроить девушке личную жизнь.', 'http://localhost:8000/storage/images/N2ZL7FeHp3zHXG8n3cL5AyNTykIA3G9iDBXjKEve.jpg', 'http://localhost:8000/storage/audio/VHUYZxMILXbNDkrnZhcXCOBlPxRm4NE073iHK3GQ.mp3', 'audio', '2024-04-25 15:07:10', '2024-04-25 15:07:10'), (18, 'И.А. Гончаров', 'Обломов', 'В Гороховой улице, в одном из больших домов, народонаселения которого стало бы на целый уездный город, лежал утром в постели, на своей квартире, Илья Ильич Обломов. Э … [Строка слишком длинная. Вы можете скачать файл] (19, 'Харуки Мураками', 'Норвежский лес', 'Было мне тогда 37 лет, сидел я в пассажирском кресле Боинга 747. Огромный самолет снизил высоту, пронзив толстенные дождевые тучи, и пытался зайти на … [Строка слишком длинная. Вы можете скачать файл] INSERT INTO `books` (`id`, `author`, `title`, `content`, `description`, `path_to_image`, `path_to_audio`, `type`, `created_at`, `updated_at`) VALUES (20, 'А.П. Чехов', 'Барыня', 'К избе Максима Журкина, шурша и шелестя по высохшей, пыльной траве, подкатила коляска, запряженная парой хорошеньких вятских лошадок. В коляске сидели барыня Елена Егоров … [Строка слишком длинная. Вы можете скачать файл] (21, 'А.П. Чехов', 'В аптеке', 'Был поздний вечер. Домашний учитель Егор Алексеич Свойкин, чтобы не терять попусту времени, от доктора отправился прямо в аптеку. «Словно к богатой содержанке идешь или к железнодорожнику, — думал он, взбираясь по аптечной лестнице, лоснящейся и устланной дорогими коврами. — Ступить страшно!» Войдя в аптеку, Свойкин был охвачен запахом, присущим всем аптекам в свете. Наука и лекарства с годами меняются, но аптечный запах вечен, как материя. Его нюхали наши деды, будут нюхать и внуки. Публики, благодаря позднему часу, в аптеке не было. За желтой, лоснящейся конторкой, уставленной вазочками с сигнатурами, стоял высокий господин с солидно закинутой назад головой, строгим лицом и с выхоленными бакенами — по всем видимостям, провизор. Начиная с маленькой плеши на голове и кончая длинными розовыми ногтями, всё на этом человеке было старательно выутюжено, вычищено и словно вылизано, хоть под венец ступай. Нахмуренные глаза его глядели свысока вниз, на газету, лежавшую на конторке. Он читал. В стороне за проволочной решеткой сидел кассир и лениво считал мелочь. По ту сторону прилавка, отделяющего латинскую кухню от толпы, в полумраке копошились две темные фигуры. Свойкин подошел к конторке и подал выутюженному господину рецепт. Тот, не глядя на него, взял рецепт, дочитал в газете до точки и, сделавши легкий полуоборот головы направо, пробормотал: — Calomeli grana duo, sacchari albi grana quinque, numero decem! 1 — Jа! 2 — послышался из глубины аптеки резкий, металлический голос. Провизор продиктовал тем же глухим, мерным голосом микстуру. — Ja! — послышалось из другого угла. Провизор написал что-то на рецепте, нахмурился и, закинув назад голову, опустил глаза на газету. — Через час будет готово, — процедил он сквозь зубы, ища глазами точку, на которой остановился. — Нельзя ли поскорее? — пробормотал Свойкин. — Мне решительно невозможно ждать. Провизор не ответил. Свойкин опустился на диван и принялся ждать. Кассир кончил считать мелочь, глубоко вздохнул и щелкнул ключом. В глубине одна из темных фигур завозилась около мраморной ступки. Другая фигура что-то болтала в синей склянке. Где-то мерно и осторожно стучали часы. Свойкин был болен. Во рту у него горело, в ногах и руках стояли тянущие боли, в отяжелевшей голове бродили туманные образы, похожие на облака и закутанные человеческие фигуры. Провизора, полки с банками, газовые рожки, этажерки он видел сквозь флер, а однообразный стук о мраморную ступку и медленное тиканье часов, казалось ему, происходили не вне, а в самой его голове... Разбитость и головной туман овладевали его телом всё больше и больше, так что, подождав немного и чувствуя, что его тошнит от стука мраморной ступки, он, чтоб подбодрить себя, решил заговорить с провизором... — Должно быть, у меня горячка начинается, — сказал он. — Доктор сказал, что еще трудно решить, какая у меня болезнь, но уж больно я ослаб... Еще счастье мое, что я в столице заболел, а не дай бог этакую напасть в деревне, где нет докторов и аптек! Провизор стоял неподвижно и, закинув назад голову, читал. На обращение к нему Свойкина он не ответил ни словом, ни движением, словно не слышал... Кассир громко зевнул и чиркнул о панталоны спичкой... Стук мраморной ступки становился всё громче и звонче. Видя, что его не слушают, Свойкин поднял глаза на полки с банками и принялся читать надписи... Перед ним замелькали сначала всевозможные «радиксы»: генциана, пимпинелла, торментилла, зедоариа и проч. За радиксами замелькали тинктуры, oleum\'ы, semen\'ы, с названиями одно другого мудренее и допотопнее. «Сколько, должно быть, здесь ненужного балласта! — подумал Свойкин. — Сколько рутины в этих банках, стоящих тут только по традиции, и в то же время как всё это солидно и внушительно!» С полок Свойкин перевел глаза на стоявшую около него стеклянную этажерку. Тут увидел он резиновые кружочки, шарики, спринцовки, баночки с зубной пастой, капли Пьерро, капли Адельгейма, косметические мыла, мазь для ращения волос... В аптеку вошел мальчик в грязном фартуке и попросил на 10 коп. бычачьей желчи. — Скажите, пожалуйста, для чего употребляется бычачья желчь? — обратился учитель к провизору, обрадовавшись теме для разговора. Не получив ответа на свой вопрос, Свойкин принялся рассматривать строгую, надменно-ученую физиономию провизора. «Странные люди, ей-богу! — подумал он. — Чего ради они напускают на свои лица ученый колер? Дерут с ближнего втридорога, продают мази для ращения волос, а глядя на их лица, можно подумать, что они и в самом деле жрецы науки. Пишут по-латыни, говорят по-немецки... Средневековое из себя что-то корчат... В здоровом состоянии не замечаешь этих сухих, черствых физиономий, а вот как заболеешь, как я теперь, то и ужаснешься, что святое дело попало в руки этой бесчувственной утюжной фигуры...» Рассматривая неподвижную физиономию провизора, Свойкин вдруг почувствовал желание лечь, во что бы то ни стало, подальше от света, ученой физиономии и стука мраморной ступки... Болезненное утомление овладело всем его существом... Он подошел к прилавку и, состроив умоляющую гримасу, попросил: — Будьте так любезны, отпустите меня! Я... я болен... — Сейчас... Пожалуйста, не облокачивайтесь! Учитель сел на диван и, гоняя из головы туманные образы, стал смотреть, как курит кассир. «Полчаса еще только прошло, — подумал он. — Еще осталось столько же... Невыносимо!» Но вот, наконец, к провизору подошел маленький, черненький фармацевт и положил около него коробку с порошками и склянку с розовой жидкостью... Провизор дочитал до точки, медленно отошел от конторки и, взяв склянку в руки, поболтал ее перед глазами... Засим он написал сигнатуру, привязал ее к горлышку склянки и потянулся за печаткой... «Ну, к чему эти церемонии? — подумал Свойкин. — Трата времени, да и деньги лишние за это возьмут». Завернув, связав и запечатав микстуру, провизор стал проделывать то же самое и с порошками. — Получите! — проговорил он наконец, но глядя на Свойкина. — Взнесите в кассу рубль шесть копеек! Свойкин полез в карман за деньгами, достал рубль и тут же вспомнил, что у него, кроме этого рубля, нет больше ни копейки... — Рубль шесть копеек? — забормотал он, конфузясь. — А у меня только всего один рубль... Думал, что рубля хватит... Как же быть-то? — Не знаю! — отчеканил провизор, принимаясь за газету. — В таком случае уж вы извините... Шесть копеек я вам завтра занесу или пришлю... — Этого нельзя... У нас кредита нет... — Как же мне быть-то? — Сходите домой, принесите шесть копеек, тогда и лекарства получите. — Пожалуй, но... мне тяжело ходить, а прислать некого... — Не знаю... Не мое дело... — Гм... — задумался учитель. — Хорошо, я схожу домой... Свойкин вышел из аптеки и отправился к себе домой... Пока он добрался до своего номера, то садился отдыхать раз пять... Придя к себе и найдя в столе несколько медных монет, он присел на кровать отдохнуть... Какая-то сила потянула его голову к подушке... Он прилег, как бы на минутку... Туманные образы в виде облаков и закутанных фигур стали заволакивать сознание... Долго он помнил, что ему нужно идти в аптеку, долго заставлял себя встать, но болезнь взяла свое. Медяки высыпались из кулака, и больному стало сниться, что он уже пошел в аптеку и вновь беседует там с провизором.', 'Больной домашний учитель Егор Алексеич Свойкин поздним вечером заказал в солидной аптеке микстуру. Провизор смотрит на него свысока, кассиру и фармацевтам нет до него дела. Через час микстура готова. Свойкину не хватает 6 копеек, чтобы ее оплатить. Его посылают домой за копейками. Дома ему совсем плохо, идти он не может, и в бреду видит себя в аптеке. Отзыв. Рассказ до сих пор актуален. Тема душевной черствости, равнодушия, бессердечия.', 'http://localhost:8000/storage/images/7prMkJLJXYKAExbIlYpS9lH6y2azzP3TWkHZc5Nd.jpg', NULL, 'book', '2024-04-25 15:22:28', '2024-04-25 15:22:28'), (22, 'А.П. Чехов', 'Два скандала', '— Стойте, чёрт вас возьми! Если эти козлы-тенора не перестанут рознить, то я уйду! Глядеть в ноты, рыжая! Вы, рыжая, третья с правой стороны! Я с вами говорю! Если … [Строка слишком длинная. Вы можете скачать файл] INSERT INTO `books` (`id`, `author`, `title`, `content`, `description`, `path_to_image`, `path_to_audio`, `type`, `created_at`, `updated_at`) VALUES (23, 'Дмитрий Глуховский', 'Метро 2033', '– Кто это там? Эй, Артем! Глянь-ка! Артем нехотя поднялся со своего места у костра и, перетягивая автомат со спины на грудь, двинулся во тьму. Стоя на самом … [Строка слишком длинная. Вы можете скачать файл] (24, 'Дмитрий Глуховский', 'Метро 2034', 'Мир разрушен ядерной войной, Земля заражена радиацией, населена мутантами и чудовищами. Те, кто успел спастись, коротают дни в бункерах и бомбоубежищах, самое большое из которых — Московский Метрополитен. Двадцать лет спустя станции метро превратились в города-государства, путь между ними лежит сквозь мрак и опасности туннелей. Цивилизация исчезает, человечество, вынужденное сражаться с нечистью и друг другом, забывают о доброте и сострадании.', 'Они не вернулись ни во вторник, ни в среду, ни даже в четверг, оговоренный как крайний срок. Первый блокпост нес дежурство круглосуточно, и если бы дозорные услышали хоть эхо призывов о помощи, заметили бледный отблеск луча на влажных темных стенах туннеля, вперед, к Нахимовскому проспекту был бы немедленно выслан ударный отряд. Напряжение нарастало с каждым часом. Лучшие бойцы, превосходно экипированные и специально подготовленные именно для таких заданий, не смыкали глаз ни на секунду. Колода карт, за которой короталось время от тревоги до тревоги, уже вторые сутки пылилась в ящике стола в караулке. Обычная болтовня сменилась тихими встревоженными разговорами, те — тяжелым молчанием: каждый надеялся первым услышать эхо шагов возвращающегося каравана. Слишком уж многое от него зависело. Севастопольская была превращена ее жителями, любой из которых — от пятилетнего мальчишки до древнего старика — умел обращаться с оружием, в неприступный бастион. Ощетинившаяся пулеметными гнездами, шипами колючей проволоки, даже сваренными из рельсов противотанковыми ежами, эта станция-крепость — казалось бы, совершенно неуязвимая, — могла пасть в любую минуту. Ее ахиллесовой пятой была постоянная нехватка боеприпасов. Столкнувшись с тем, что приходилось ежедневно выдерживать обитателям Севастопольской, жители любой другой станции наверняка и не подумали бы ее оборонять, бежав оттуда, как крысы из затапливаемого туннеля. Даже могущественная Ганза — союз станций Кольцевой линии, — подсчитав все расходы, вряд ли решилась бы бросить необходимые силы на защиту Севастопольской. Да, ее стратегическое значение было велико, но все же игра не стоила свеч. Электроэнергия действительно была очень дорога. Достаточно дорога, чтобы севастопольцы, построившие одну из самых крупных гидроэлектростанций в метро, на доходы от ее поставок Ганзе ящиками заказывали боеприпасы и все-таки оставались в прибыли. Однако многим из них приходилось расплачиваться не только патронами, но и своими искалеченными, оборванными жизнями.Грунтовые воды, благословение и проклятие Севастопольской, обтекали ее со всех сторон, словно воды Стикса — утлую барку Харона. Они вращали лопасти десятков водяных мельниц, сооруженных местными самоучками в туннелях, гротах, подземных руслах — всюду, куда могли добраться инженерно-разведывательные группы, давая свет и тепло самой станции и еще доброй трети Кольца. Они же неустанно подтачивали опоры, разъедали цемент спаек, убаюкивающе журчали совсем близко за стенами главного зала, пытаясь усыпить бдительность обитателей. Наконец, не позволяли взорвать лишние, неиспользуемые перегоны, откуда на Севастопольскую непрестанно, словно бесконечная ядовитая многоножка, заползающая в мясорубку, двигались орды кошмарных созданий. Жители станции, команда этого несущегося по Преисподней призрачного фрегата, были навечно обречены искать и заделывать все новые пробоины, потому что их корабль давно дал течь, но пристани, где он мог бы обрести покой, просто не существовало. И одновременно они должны были отражать атаку за атакой шедших на абордаж с Чертановской и Нахимовского проспекта чудовищ… Ползущих из вентиляционных шахт, просачивающихся вместе с мутными стремительными ручьями сквозь канализационные стоки, рвущихся из южных туннелей. Казалось, весь мир ополчился против севастопольцев, не жалея никаких усилий для того, чтобы стереть их пристанище с карты метро. А они до последнего цеплялись за свою станцию, будто, кроме нее, у них ничего во Вселенной не оставалось. Но какими бы искусными ни были местные инженеры, каких опытных и безжалостных бойцов ни воспитывала бы Севастопольская, они не могли уберечь свое жилище без патронов, без ламп для прожекторов, без антибиотиков и бинтов. Да, станция вырабатывала электричество, и Ганза была готова платить за него хорошую цену, но у Кольца были и другие поставщики, и собственные источники, а севастопольцы без подпитки извне вряд ли продержались бы даже месяц. А страшнее всего было остаться без боеприпасов.', 'http://localhost:8000/storage/images/gPy0mwWMoqwEbEdIij4ibxDBfMIVybU5AqIHDy1n.jpg', NULL, 'book', '2024-04-25 15:28:46', '2024-04-25 15:28:46'), (25, 'Дмитрий Глуховский', 'Метро 2035', '— Нельзя, Артем. — Открывай. Открывай, говорю. — Начстанции сказал… Сказал, не выпускать никого. — Ты за идиота меня, что ли? Кого — никого? Кого это — «никог … [Строка слишком длинная. Вы можете скачать файл] (26, 'Борис Акунин', 'Нефритовые чётки', 'На похоронах человека, который собирался стать буддой, публики было до неприличного мало. Из компатриотов один вице-консул Фандорин, бывший сослуживец покойного. Эраст Петрович стоял над узкой могилой, куда послушник только что опустил небольшой ящик с костями и пеплом, и слушал монотонный напев бонзы, теребя в руках шёлковый цилиндр с крепом. Все японцы были в белом, и коллежский асессор в своём траурном сюртуке выделялся, будто ворон среди голубиной стаи. Но и японцев на монастырское кладбище пришла всего горстка – слухи о страшной смерти затворника Мэйтана перепугали всю туземную Иокогаму. В последний путь прах отшельника провожали лишь настоятель с послушником, вдова с маленькой дочкой и ещё двое, державшиеся поодаль – на них Фандорин старался особенно не смотреть. Европейский Сеттльмент, население которого, согласно заметке в «Джапан газетт» от 15 августа 1881 года, только что перевалило за десять тысяч, в языческие бредни не верил и проигнорировал похороны по иной причине. Консул Вебер сказал своему помощнику: «Эраст, дело, конечно, твоё. Считаешь необходимым – иди, но, пожалуйста, никаких надгробных речей. Не забывай, этот субъект изменил своей вере, своему отечеству и всей белой расе». Так оно в общем-то и было. Человек, в последние годы жизни называвший себя Мэйтаном, добровольно отказался от чина, дворянства, российского подданства, православной религии, даже от собственного имени. Взял фамилию японской жены, вместо пиджака и брюк стал носить кимоно, а позднее облачился в рясу буддийского монаха и прекратил все сношения с соотечественниками, даже с Фандориным, с которым прежде приятельствовал. За три года они не виделись ни разу. Эраст Петрович знал причину этой непреклонности и, в отличие от консула Вебера, относился к ней с пониманием и состраданием. Причина присутствовала здесь же, в могильном дворе Храма Преумножения Добродетели, где ренегат провёл последний период своей жизни. Маленькая девочка, запоздалый ребёнок бывшего российского подданного и его японской жены, сидела рядом с матерью в плетёной коляске и сонно клевала носиком, убаюканная пением сутр. В таком возрасте дети уже вовсю ходят и даже бегают, но этот ребёнок родился на свет с безжизненными, парализованными ногами. Тогда-то несчастный отец и удалился в монастырь секты Сингон. Взял имя Мэйтан, что означает Взыскующий Просветления, и вознамерился при жизни стать буддой. Вдова усопшего, Сатоко, стояла возле коляски с совершенно неподвижным лицом. Её глаза были сухими, ибо публичное проявление скорби расстроило бы окружающих. Здесь вообще никто не проявлял эмоций. Настоятель Согэн, как и подобает буддийскому священнику, всем своим видом показывал, что смерть – событие отрадное и в некотором смысле даже праздничное. Что ж, такая у преподобного была работа. Плюгавенький служка шмыгал носом и поглядывал в могилу с нескрываемой опаской, не отходя от настоятеля ни на шаг, но никакой скорби его бледная, слегка приплюснутая физиономия не выражала. Когда же Фандорин, улучив момент, повнимательнее рассмотрел парочку, что держалась поодаль, ему показалось, что женщина улыбается. Нет, то была не улыбка – скорее оскал жадного, нетерпеливого любопытства. Впрочем, это существо, один взгляд на которое вызывал содрогание, назвать женщиной можно было только с большой натяжкой. На спине у здоровенного слуги, в заплечном мешке, отдалённо напоминающем альпинистский рюкзак, сидело диковинное создание: красивая женская голова с замысловатой, тщательно уложенной причёской симада-магэ на крошечном тельце четырёхлетнего ребёнка. Уродка внимательно следила за церемонией, быстро поводя вправо-влево точёным подбородком. Крошечная ручка возбуждённо постукивала веером по бритой макушке слуги. Фандорин встретился взглядом с блестящими глазами пигалицы и, смутившись, отвернулся. Присутствие этой несчастной придавало и без того печальной церемонии какую-то особую макаберность. Больше на кладбище никого не было – так, во всяком случае, считал Фандорин до тех пор, пока его внимание не привлёк неприятный звук: будто кто-то смачно, что называется, от души харкнул. Вице-консул оглянулся и увидел за невысокой бамбуковой оградой, отделявшей буддистское кладбище от соседнего христианского, человека в брезентовой куртке и полосатой матросской рубахе. Он стоял, опершись на перекладину и наблюдал за похоронами с явной враждебностью. Красная, поросшая пегой щетиной рожа дёргалась злобным тиком. Одна нога зрителя была обута в стоптанный сапог, вторая, деревянная, свирепо постукивала по земле. Какой-то конгресс инвалидов, подумалось Фандорину, и он поморщился – устыдился собственного жестокосердия. Тут одноногий совершил поступок, заставивший вице-консула и вовсе покраснеть от стыда – уже не за себя, а за всю европейскую расу. Несимпатичный гайдзин (так в Японии называли иностранцев) плюнул через ограду коричневой табачной слюной, хрипло загоготал и выкрикнул по-английски: – Мартышкины похороны! Всех бы вас закопать, макаки чёртовы! Преподобный Согэн покосился на нарушителя чинности, но молитвы не прервал. Вдова же дёрнулась, как от удара, и её бледное лицо сделалось ещё белей. Фандорин знал, что Сатоко понимает по-английски, а стало быть, отвратительную выходку нельзя было оставлять без последствий. Эраст Петрович почтительно отступил на несколько шагов, потом, стараясь привлекать к себе поменьше внимания, развернулся и быстро направился к невеже. – Вон отсюда, – сказал он тихим, звенящим от ярости голосом. – Иначе… – Кто ты такой, япошкин прихвостень? – уставился на него инвалид бесстрашными выцветшими глазами. – Не тявкай на старину Сильвестера, не то он попортит твою смазливую мордашку. В здоровенной ручище что-то щёлкнуло, из кулака выскочило лезвие испанского ножа. – Я вице-консул Российской империи Фандорин, – назвался Эраст Петрович. – А вы к-кто? – Я вице-консул Господа нашего на этом кладбище. Понял ты, заика несчастный? – в тон ему ответил Сильвестер, ещё раз сплюнул и заковылял прочь, в сторону каменных надгробий, увенчанных крестами. Кладбищенский смотритель или сторож, догадался Фандорин и пообещал себе, что после похорон непременно наведается к приходскому священнику – пусть сделает грубияну внушение. Когда коллежский асессор вернулся к могиле, церемония уже закончилась. Настоятель пригласил всех к себе, выпить в память об усопшем. – Вот желание Мэйтана и осуществилось, – благодушно промурлыкал преподобный, когда послушник наполнил чарки подогретым сакэ, которое в монастыре называли хання, то есть «ведьмин кипяток». – Он хотел стать буддой и стал, только не при жизни, а после смерти. Так оно ещё лучше. Помолчали. Через открытые перегородки из сада дул свежий ветерок, по временам покачивая священный свиток, висевший над головой настоятеля. – Ибо смерть должна быть ступенькой вверх, а не топтанием на месте. Если ты уже стал буддой, то куда после этого подниматься? – продолжил Согэн, смакуя вино. Женщины – Сатоко и та, вторая, похожая на головастика (Эраст Петрович уже знал, что её зовут Эми Тэрада), – молитвенно сложили руки, причём Эми ещё и сочувственно покивала своей замысловатой причёской. Сидела она не нормальным образом, на коленях, а в специальном станке, куда её пристроил слуга, прежде чем удалиться. Понимая, что это лишь начало пространной проповеди, Фандорин решил повернуть разговор в ином направлении, занимавшем его куда больше, чем благочестивые рассуждения. – О кончине святого отшельника ходят самые диковинные слухи, – сказал он. – Г-говорят вещи, в которые невозможно поверить… Лицо настоятеля залучилось добродушной улыбкой – как и следовало ожидать, Согэн отнёсся к гайдзинской невоспитанности снисходительно. Улыбка означала: «Всем известно, что некоторые иностранцы могут выучить японский язык так же хорошо, как этот голубоглазый дылда, но приличным манерам обучить их невозможно». – Да, наша мирная обитель подверглась тяжкому испытанию. Некоторые даже говорят, что над Храмом Преумножения Добродетели повисло проклятье. Мы опасаемся, что количество паломников теперь уменьшится. Хотя, с другой стороны, многих, наверное, привлечёт аромат таинственного. Мир Будды иногда подобен залитой солнцем равнине, а иногда – ночному лесу. – Повернувшись к вдове, преподобный мягко сказал. – Я знаю, дочь моя, как тяжело вам говорить об этом ужасном происшествии, перевернувшем вашу жизнь и омрачившем мирное существование нашей обители. Но слова – лучшее средство против горя, они так поверхностны и легковесны, что, облачив в них свою печаль, вы тем самым облегчаете бремя, гнетущее вашу душу. Чем чаще вы будете рассказывать эту страшную историю, тем скорее ваша душа вернёт утраченную гармонию. Поверьте, я знаю, что говорю. Это ничего, что я и Тэрада-сан знаем все подробности, мы послушаем ещё раз.', 'Иронический детектив о том, как в последнюю ночь XIX века столкнулись в соперничестве два великих сыщика и не менее великий мошенник… Холмс и Уотсон, а также Фандорин и Маса противостоят гению криминального мира Арсену Люпену. По ходу сюжета каждый из участников делает правильные выводы и совершает ошибки, но в итоге оказывается, что ни один из трёх мудрых не получил того, что хотел.', 'http://localhost:8000/storage/images/ifA8xkiU4DywCdCzGAQMCwEpIcRZig7hWu4WLLaC.jpg', NULL, 'book', '2024-04-25 15:34:52', '2024-04-25 15:34:52'); INSERT INTO `books` (`id`, `author`, `title`, `content`, `description`, `path_to_image`, `path_to_audio`, `type`, `created_at`, `updated_at`) VALUES (27, 'Агата Кристи', 'Десять негритят', 'В углу курительного вагона первого класса судья Уоргрейв – он недавно вышел в отставку – попыхивал сигарой и просматривал отдел политики в «Таймс». Вскоре он о … [Строка слишком длинная. Вы можете скачать файл] (28, 'Агата Кристи', 'Убийство в Восточном экспрессе', 'Ранним морозным утром, в пять часов по местному времени, вдоль платформы сирийской станции Алеппо вытянулся состав, который железнодорожные спра … [Строка слишком длинная. Вы можете скачать файл] (29, 'Ф.М. Достоевский', 'Идиот', 'В конце ноября, в оттепель, часов в девять утра, поезд Петербургско-Варшавской железной дороги на всех парах подходил к Петербургу. Было так сыро и туманно, что наси … [Строка слишком длинная. Вы можете скачать файл] INSERT INTO `books` (`id`, `author`, `title`, `content`, `description`, `path_to_image`, `path_to_audio`, `type`, `created_at`, `updated_at`) VALUES (30, 'М.А. Булгаков', 'Мастер и Маргарита', 'Однажды весною, в час небывало жаркого заката, в Москве, на Патриарших прудах, появились два гражданина. Первый из них, одетый в летнюю серенькую пару, был … [Строка слишком длинная. Вы можете скачать файл] (31, 'М.А. Булгаков', 'Собачье сердце', 'У‑у-у-у-у-гу-гуг-гуу! О, гляньте на меня, я погибаю. Вьюга в подворотне ревёт мне отходную, и я вою с ней. Пропал я, пропал. Негодяй в грязном колпаке – повар … [Строка слишком длинная. Вы можете скачать файл] -- -------------------------------------------------------- -- -- Структура таблицы `book_reviews` -- CREATE TABLE `book_reviews` ( `id` bigint UNSIGNED NOT NULL, `content` text, `count_star` smallint NOT NULL, `book_id` bigint UNSIGNED NOT NULL, `user_id` bigint UNSIGNED NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -------------------------------------------------------- -- -- Структура таблицы `failed_jobs` -- CREATE TABLE `failed_jobs` ( `id` bigint UNSIGNED NOT NULL, `uuid` varchar(255) NOT NULL, `connection` text NOT NULL, `queue` text NOT NULL, `payload` longtext NOT NULL, `exception` longtext NOT NULL, `failed_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -------------------------------------------------------- -- -- Структура таблицы `favorite_user_book` -- CREATE TABLE `favorite_user_book` ( `id` bigint UNSIGNED NOT NULL, `id_user` bigint UNSIGNED NOT NULL, `id_book` bigint UNSIGNED NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -------------------------------------------------------- -- -- Структура таблицы `migrations` -- CREATE TABLE `migrations` ( `id` int UNSIGNED NOT NULL, `migration` varchar(255) NOT NULL, `batch` int NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `migrations` -- INSERT INTO `migrations` (`id`, `migration`, `batch`) VALUES (1, '2013_02_03_181031_create_subscriptions_table', 1), (2, '2014_10_12_000000_create_users_table', 1), (3, '2014_10_12_100000_create_password_reset_tokens_table', 1), (4, '2019_08_19_000000_create_failed_jobs_table', 1), (5, '2019_12_14_000001_create_personal_access_tokens_table', 1), (6, '2024_02_03_175722_create_books_table', 1), (7, '2024_02_03_180336_create_book_reviews_table', 1), (8, '2024_02_03_183202_subscription_book', 1), (9, '2024_02_03_183429_favorite_user_book', 1), (10, '2024_02_04_124155_create_app_reviews_table', 1), (11, '2024_04_08_124402_user_subscriptions', 1), (12, '2024_04_13_073821_user_book', 1); -- -------------------------------------------------------- -- -- Структура таблицы `password_reset_tokens` -- CREATE TABLE `password_reset_tokens` ( `email` varchar(255) NOT NULL, `token` varchar(255) NOT NULL, `created_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -------------------------------------------------------- -- -- Структура таблицы `personal_access_tokens` -- CREATE TABLE `personal_access_tokens` ( `id` bigint UNSIGNED NOT NULL, `tokenable_type` varchar(255) NOT NULL, `tokenable_id` bigint UNSIGNED NOT NULL, `name` varchar(255) NOT NULL, `token` varchar(64) NOT NULL, `abilities` text, `last_used_at` timestamp NULL DEFAULT NULL, `expires_at` timestamp NULL DEFAULT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `personal_access_tokens` -- INSERT INTO `personal_access_tokens` (`id`, `tokenable_type`, `tokenable_id`, `name`, `token`, `abilities`, `last_used_at`, `expires_at`, `created_at`, `updated_at`) VALUES (1, 'App\\Models\\User', 1, 'main', '316ab472a7273ef124236f595cc24430ba7aeabdf546a534c873861449452f28', '[\"*\"]', NULL, NULL, '2024-04-25 13:25:49', '2024-04-25 13:25:49'), (2, 'App\\Models\\User', 1, 'main', 'bdc9a54abcd73d9d29b5e222fc181630af34d6193a796dc032e48bf6bed03083', '[\"*\"]', '2024-04-25 16:18:03', NULL, '2024-04-25 13:25:51', '2024-04-25 16:18:03'), (3, 'App\\Models\\User', 1, 'main', '1b5c0d3c3c9ef3399db87fa0903231c9cb26d1f7e2ff38f8a2392622177849a1', '[\"*\"]', '2024-04-25 16:50:17', NULL, '2024-04-25 16:18:22', '2024-04-25 16:50:17'), (4, 'App\\Models\\User', 2, 'main', '844642006f6324790f2ada199b1594cbd78288ad6ea032cf5d580c883e8b523f', '[\"*\"]', NULL, NULL, '2024-04-25 16:47:17', '2024-04-25 16:47:17'), (5, 'App\\Models\\User', 2, 'main', 'ab88d4779a7026533f3d9027cd0e726af1505d5ebb27e5b56d6b3417f12d8186', '[\"*\"]', '2024-04-25 16:47:42', NULL, '2024-04-25 16:47:22', '2024-04-25 16:47:42'), (6, 'App\\Models\\User', 1, 'main', 'a65fdd181c51316d5576a472bf74db515663b928dd9dad94a87e27e57579109e', '[\"*\"]', NULL, NULL, '2024-04-25 16:47:54', '2024-04-25 16:47:54'), (7, 'App\\Models\\User', 1, 'main', '54fcdc56ea9cd634c43d8423c10f6d6a69e4de65f1f33bd57bc3c817709513c6', '[\"*\"]', '2024-04-25 16:48:11', NULL, '2024-04-25 16:47:55', '2024-04-25 16:48:11'), (8, 'App\\Models\\User', 3, 'main', '753022a6d2c029b6a13300fb4fdada301037d132af20b3a55b3be85efae09993', '[\"*\"]', NULL, NULL, '2024-04-25 16:48:54', '2024-04-25 16:48:54'), (9, 'App\\Models\\User', 3, 'main', '66c3d829e809e29e831f5001a66658539de471b09dba3e9774cb7a6adefdde8d', '[\"*\"]', '2024-04-25 16:50:52', NULL, '2024-04-25 16:49:08', '2024-04-25 16:50:52'); -- -------------------------------------------------------- -- -- Структура таблицы `subscriptions` -- CREATE TABLE `subscriptions` ( `id` bigint UNSIGNED NOT NULL, `name` varchar(255) NOT NULL, `cost` bigint NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `subscriptions` -- INSERT INTO `subscriptions` (`id`, `name`, `cost`, `created_at`, `updated_at`) VALUES (1, 'Стандарт', 250, '2024-04-25 18:49:16', NULL), (2, 'Расширенная', 400, '2024-04-25 18:49:31', NULL), (3, 'Расширенная+', 550, '2024-04-25 18:49:50', NULL); -- -------------------------------------------------------- -- -- Структура таблицы `subscription_book` -- CREATE TABLE `subscription_book` ( `id` bigint UNSIGNED NOT NULL, `id_book` bigint UNSIGNED NOT NULL, `id_subscription` bigint UNSIGNED NOT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `subscription_book` -- INSERT INTO `subscription_book` (`id`, `id_book`, `id_subscription`, `created_at`, `updated_at`) VALUES (1, 1, 1, '2024-04-25 18:50:29', NULL), (2, 2, 1, NULL, NULL), (3, 3, 1, '2024-04-25 18:50:51', NULL), (4, 4, 1, '2024-04-25 18:50:51', NULL), (5, 5, 1, '2024-04-25 18:51:30', NULL), (6, 7, 1, '2024-04-25 18:51:30', NULL), (7, 9, 1, '2024-04-25 18:52:02', NULL), (8, 10, 1, '2024-04-25 18:52:39', NULL), (9, 11, 1, NULL, NULL), (10, 28, 1, '2024-04-25 18:53:40', NULL), (11, 1, 2, NULL, NULL), (12, 2, 2, NULL, NULL), (13, 3, 2, NULL, NULL), (14, 4, 2, NULL, NULL), (16, 5, 2, NULL, NULL), (17, 7, 2, NULL, NULL), (18, 9, 2, NULL, NULL), (19, 10, 2, NULL, NULL), (20, 31, 2, NULL, NULL), (21, 30, 2, NULL, NULL), (22, 29, 2, NULL, NULL), (23, 28, 2, NULL, NULL), (24, 27, 2, NULL, NULL), (25, 26, 2, NULL, NULL), (26, 25, 2, NULL, NULL), (27, 24, 2, NULL, NULL), (28, 1, 3, NULL, NULL), (29, 2, 3, NULL, NULL), (30, 3, 3, NULL, NULL), (31, 4, 3, NULL, NULL), (32, 5, 3, NULL, NULL), (33, 7, 3, NULL, NULL), (34, 9, 3, NULL, NULL), (35, 10, 3, NULL, NULL), (36, 11, 3, NULL, NULL), (37, 12, 3, NULL, NULL), (38, 14, 3, NULL, NULL), (39, 15, 3, NULL, NULL), (40, 16, 3, NULL, NULL), (41, 17, 3, NULL, NULL), (42, 18, 3, NULL, NULL), (43, 19, 3, NULL, NULL), (44, 20, 3, NULL, NULL), (45, 21, 3, NULL, NULL), (46, 22, 3, NULL, NULL), (47, 23, 3, NULL, NULL), (48, 24, 3, NULL, NULL), (49, 25, 3, NULL, NULL), (50, 26, 3, NULL, NULL), (51, 27, 3, NULL, NULL), (52, 28, 3, NULL, NULL), (53, 29, 3, NULL, NULL), (54, 30, 3, NULL, NULL), (55, 31, 3, NULL, NULL); -- -------------------------------------------------------- -- -- Структура таблицы `users` -- CREATE TABLE `users` ( `id` bigint UNSIGNED NOT NULL, `path_to_photo` varchar(255) DEFAULT NULL, `nickname` varchar(255) NOT NULL, `description` varchar(255) DEFAULT NULL, `id_subscription` bigint UNSIGNED DEFAULT NULL, `email` varchar(255) NOT NULL, `email_verified_at` timestamp NULL DEFAULT NULL, `password` varchar(255) NOT NULL, `isAdmin` tinyint(1) DEFAULT NULL, `remember_token` varchar(100) DEFAULT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `users` -- INSERT INTO `users` (`id`, `path_to_photo`, `nickname`, `description`, `id_subscription`, `email`, `email_verified_at`, `password`, `isAdmin`, `remember_token`, `created_at`, `updated_at`) VALUES (1, NULL, 'nindp', NULL, 2, 'natali419915@yandex.ru', NULL, '$2y$12$d7qVTbBnbPjAdvgMLjaga.xYSHo7G2FKlnIDe5.2Tvc./ztLcY07.', 1, NULL, '2024-04-25 13:25:49', '2024-04-25 16:16:08'), (2, NULL, 'Sasha', NULL, NULL, 'nefdovasasha@mail.ru', NULL, '$2y$12$8TcQSnwcA/mVJA68aF6zIeqs1NlJ0OZUolAxQJOH9VJST0qBk9tYu', 0, NULL, '2024-04-25 16:47:17', '2024-04-25 16:47:17'), (3, NULL, 'vlad', NULL, NULL, 'vladlevin790@gmail.com', NULL, '$2y$12$wgXLrK.1Gy8sJ8KnvdMXt.AzNImORY6wwIrr.Fdb.JXKO9.NMzX32', 0, NULL, '2024-04-25 16:48:54', '2024-04-25 16:48:54'); -- -------------------------------------------------------- -- -- Структура таблицы `user_book` -- CREATE TABLE `user_book` ( `id` bigint UNSIGNED NOT NULL, `user_id` bigint UNSIGNED NOT NULL, `book_id` bigint UNSIGNED NOT NULL, `last_page` int DEFAULT NULL, `last_time` int DEFAULT NULL, `isLike` tinyint(1) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `user_book` -- INSERT INTO `user_book` (`id`, `user_id`, `book_id`, `last_page`, `last_time`, `isLike`) VALUES (1, 1, 1, NULL, 5, NULL); -- -------------------------------------------------------- -- -- Структура таблицы `user_subscriptions` -- CREATE TABLE `user_subscriptions` ( `id` bigint UNSIGNED NOT NULL, `user_id` bigint UNSIGNED NOT NULL, `subscription_id` bigint UNSIGNED NOT NULL, `date_end` timestamp NULL DEFAULT NULL, `created_at` timestamp NULL DEFAULT NULL, `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; -- -- Дамп данных таблицы `user_subscriptions` -- INSERT INTO `user_subscriptions` (`id`, `user_id`, `subscription_id`, `date_end`, `created_at`, `updated_at`) VALUES (1, 1, 2, NULL, '2024-04-25 16:16:08', '2024-04-25 16:16:08'); -- -- Индексы сохранённых таблиц -- -- -- Индексы таблицы `app_reviews` -- ALTER TABLE `app_reviews` ADD PRIMARY KEY (`id`), ADD KEY `app_reviews_user_id_foreign` (`user_id`); -- -- Индексы таблицы `books` -- ALTER TABLE `books` ADD PRIMARY KEY (`id`); -- -- Индексы таблицы `book_reviews` -- ALTER TABLE `book_reviews` ADD PRIMARY KEY (`id`), ADD KEY `book_reviews_book_id_foreign` (`book_id`), ADD KEY `book_reviews_user_id_foreign` (`user_id`); -- -- Индексы таблицы `failed_jobs` -- ALTER TABLE `failed_jobs` ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `failed_jobs_uuid_unique` (`uuid`); -- -- Индексы таблицы `favorite_user_book` -- ALTER TABLE `favorite_user_book` ADD PRIMARY KEY (`id`), ADD KEY `favorite_user_book_id_user_foreign` (`id_user`), ADD KEY `favorite_user_book_id_book_foreign` (`id_book`); -- -- Индексы таблицы `migrations` -- ALTER TABLE `migrations` ADD PRIMARY KEY (`id`); -- -- Индексы таблицы `password_reset_tokens` -- ALTER TABLE `password_reset_tokens` ADD PRIMARY KEY (`email`); -- -- Индексы таблицы `personal_access_tokens` -- ALTER TABLE `personal_access_tokens` ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `personal_access_tokens_token_unique` (`token`), ADD KEY `personal_access_tokens_tokenable_type_tokenable_id_index` (`tokenable_type`,`tokenable_id`); -- -- Индексы таблицы `subscriptions` -- ALTER TABLE `subscriptions` ADD PRIMARY KEY (`id`); -- -- Индексы таблицы `subscription_book` -- ALTER TABLE `subscription_book` ADD PRIMARY KEY (`id`), ADD KEY `subscription_book_id_book_foreign` (`id_book`), ADD KEY `subscription_book_id_subscription_foreign` (`id_subscription`); -- -- Индексы таблицы `users` -- ALTER TABLE `users` ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `users_email_unique` (`email`), ADD KEY `users_id_subscription_foreign` (`id_subscription`); -- -- Индексы таблицы `user_book` -- ALTER TABLE `user_book` ADD PRIMARY KEY (`id`), ADD KEY `user_book_user_id_foreign` (`user_id`), ADD KEY `user_book_book_id_foreign` (`book_id`); -- -- Индексы таблицы `user_subscriptions` -- ALTER TABLE `user_subscriptions` ADD PRIMARY KEY (`id`), ADD KEY `user_subscriptions_user_id_foreign` (`user_id`), ADD KEY `user_subscriptions_subscription_id_foreign` (`subscription_id`); -- -- AUTO_INCREMENT для сохранённых таблиц -- -- -- AUTO_INCREMENT для таблицы `app_reviews` -- ALTER TABLE `app_reviews` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4; -- -- AUTO_INCREMENT для таблицы `books` -- ALTER TABLE `books` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=32; -- -- AUTO_INCREMENT для таблицы `book_reviews` -- ALTER TABLE `book_reviews` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT; -- -- AUTO_INCREMENT для таблицы `failed_jobs` -- ALTER TABLE `failed_jobs` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT; -- -- AUTO_INCREMENT для таблицы `favorite_user_book` -- ALTER TABLE `favorite_user_book` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT; -- -- AUTO_INCREMENT для таблицы `migrations` -- ALTER TABLE `migrations` MODIFY `id` int UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=13; -- -- AUTO_INCREMENT для таблицы `personal_access_tokens` -- ALTER TABLE `personal_access_tokens` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10; -- -- AUTO_INCREMENT для таблицы `subscriptions` -- ALTER TABLE `subscriptions` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4; -- -- AUTO_INCREMENT для таблицы `subscription_book` -- ALTER TABLE `subscription_book` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=56; -- -- AUTO_INCREMENT для таблицы `users` -- ALTER TABLE `users` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4; -- -- AUTO_INCREMENT для таблицы `user_book` -- ALTER TABLE `user_book` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2; -- -- AUTO_INCREMENT для таблицы `user_subscriptions` -- ALTER TABLE `user_subscriptions` MODIFY `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2; -- -- Ограничения внешнего ключа сохраненных таблиц -- -- -- Ограничения внешнего ключа таблицы `app_reviews` -- ALTER TABLE `app_reviews` ADD CONSTRAINT `app_reviews_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE; -- -- Ограничения внешнего ключа таблицы `book_reviews` -- ALTER TABLE `book_reviews` ADD CONSTRAINT `book_reviews_book_id_foreign` FOREIGN KEY (`book_id`) REFERENCES `books` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `book_reviews_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE; -- -- Ограничения внешнего ключа таблицы `favorite_user_book` -- ALTER TABLE `favorite_user_book` ADD CONSTRAINT `favorite_user_book_id_book_foreign` FOREIGN KEY (`id_book`) REFERENCES `books` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `favorite_user_book_id_user_foreign` FOREIGN KEY (`id_user`) REFERENCES `users` (`id`) ON DELETE CASCADE; -- -- Ограничения внешнего ключа таблицы `subscription_book` -- ALTER TABLE `subscription_book` ADD CONSTRAINT `subscription_book_id_book_foreign` FOREIGN KEY (`id_book`) REFERENCES `books` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `subscription_book_id_subscription_foreign` FOREIGN KEY (`id_subscription`) REFERENCES `subscriptions` (`id`) ON DELETE CASCADE; -- -- Ограничения внешнего ключа таблицы `users` -- ALTER TABLE `users` ADD CONSTRAINT `users_id_subscription_foreign` FOREIGN KEY (`id_subscription`) REFERENCES `subscriptions` (`id`) ON DELETE CASCADE; -- -- Ограничения внешнего ключа таблицы `user_book` -- ALTER TABLE `user_book` ADD CONSTRAINT `user_book_book_id_foreign` FOREIGN KEY (`book_id`) REFERENCES `books` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `user_book_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE; -- -- Ограничения внешнего ключа таблицы `user_subscriptions` -- ALTER TABLE `user_subscriptions` ADD CONSTRAINT `user_subscriptions_subscription_id_foreign` FOREIGN KEY (`subscription_id`) REFERENCES `subscriptions` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `user_subscriptions_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE; COMMIT; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;