Транзакции

Транзакции

Транзакции, что это за зверь, какие с ними проблемы, зачем они нужны. Давайте разбираться. Начнем конечно с определения. Транзакция — это набор действий с данными, объединенный в логическую единицу. Она либо выполняется целиком, либо нет. Проблемы неизолированных транзакций Потерянное обновление. Когда две транзакции записывают разные значения в одну и ту же ячейку, одно из изменений теряется. Грязное чтение. Когда читаются данные, которые в этот момент изменяются транзакцией, а потом транзакция откатывается и данные исчезают. Неповторяющееся чтение. Когда несколько раз читаются данные, которые в этот момент изменяются транзакцией — каждый раз данные могут отказаться другими. Фантомное чтение. Одна транзакция в ходе своего выполнения несколько раз выбирает множество строк по одним и тем же критериям. Другая транзакция в интервалах между этими выборками добавляет или удаляет строки или изменяет столбцы некоторых строк, используемых в критериях выборки первой транзакции, и успешно заканчивается. В результате получится, что одни и те же выборки в первой транзакции дают разные множества строк. Изоляция транзакций Чтобы параллельные транзакции могли выполняться, не мешая друг другу, придумали концепцию изоляции транзакций. Всего есть четыре уровня изоляции, но некоторые базы данных вводят свои уровни. ...

5 ноября 2024 г. · 3 минуты · CrazyElephant_x
Резервный набор данных содержит копию базы данных отличной от существующей базы данных

Резервный набор данных содержит копию базы данных

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

23 сентября 2022 г. · 2 минуты · CrazyElephant_x
SQL команда Order by

SQL команда Order by

Команда ORDER BY позволяет сортировать записи при выборке из базы данных по определенному полю. Синтаксис команды ORDER BY Сортировка по полю, по возрастанию SELECT * FROM имя_таблицы ORDER BY поле_для_сортировки Сортировка по нескольким полям, по возрастанию SELECT * FROM имя_таблицы ORDER BY поле1_для_сортировки, поле2_для_сортировки Что бы сортировать записи по убыванию нужно добавить DESC SELECT * FROM имя_таблицы ORDER BY поле_для_сортировки DESC ASC — означает сортировку по возрастанию (используется по умолчанию) ...

9 сентября 2021 г. · 1 минута · CrazyElephant_x
'СodeWars, SQL решаем задачи #5'

СodeWars, SQL решаем задачи #5

Easy SQL — Ordering Your task is to sort the information in the provided table ‘companies’ by number of employees (high to low). Returned table should be in the same format as provided: companies table schema id ceo motto employees Solution should use pure SQL. Ruby is only used in test cases. Перевод задания: Ваша задача — отсортировать информацию в предоставленной таблице «компании» по количеству сотрудников (по убыванию). Возвращенная таблица должна быть в том же формате, что и предоставленная: ...

9 сентября 2021 г. · 1 минута · CrazyElephant_x
SQL для аналитика данных ч.1

SQL для аналитика данных ч.1

Небольшой набор не самых популярных SQL команд для решения повседневных задач. Добавляй в избранное, что бы возвращаться и подсматривать. CONCAT_WS() Функция CONCAT_WS соединяет все элементы, кроме первого, через указанный разделитель. Разделитель указывается первым аргументом. Значения NULL игнорируются. select concat_ws('; ', 123, null, 456, 'Иван') 123; 456; Иван Функцию удобно использовать , когда из нескольких столбцов нужно получить строку. LEFT() и RIGHT() Функция LEFT и RIGHT возвращают первые или последние n символом в строке. Если значение n меньше нуля, то возвращаются все символы, кроме n — последних/первых. ...

27 августа 2021 г. · 2 минуты · CrazyElephant_x