Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Удаление строк из разных таблиц одним запросом

27.10.2021 | Категория: Web-мастеру и не только | Автор: ManHunter
Типичная задача при разработке web-приложений - удаление объекта и связанных с ним свойств, хранящихся в базе MySQL в разных таблицах. Чаще всего это делается несколькими последовательными запросами, типа
  1. DELETE FROM `item_tableWHERE `item_id`=5
  2. DELETE FROM `properties_tableWHERE `property_parent`=5
  3. DELETE FROM `sizes_tableWHERE `size_parent`=5
и т.д. Главная проблема тут даже не в лишних запросах, а в том, что если на каком-либо промежуточном этапе произойдет критическая ошибка, то в базе останутся "зомби" в виде ни к чему не привязанных записей или наоборот, останется родительская запись, у которой уже удалены все связанные свойства. Оба варианта плохие.

Все эти проблемы легко решаются, если запрос на удаление сформировать в следующем виде:
  1. DELETE
  2. `item_table`, `properties_table`, `sizes_table`
  3. FROM
  4. `item_table`, `properties_table`, `sizes_table`
  5. WHERE `item_id`=5
  6. AND `property_parent`=`item_id`
  7. AND `size_parent`=`item_id`
или, если каких-либо связанных записей в базе может не оказаться:
  1. DELETE
  2. `item_table`, `properties_table`, `sizes_table`
  3. FROM
  4. `item_table`
  5. LEFT JOIN
  6. `properties_tableON (`property_parent`=`item_id`),
  7. `sizes_tableON (`size_parent`=`item_id`)
  8. WHERE `item_id`=
Прелесть такого решения заключается в том, что запрос или выполняется полностью или не выполняется совсем, гарантированно обеспечивая целостность данных. Получается что-то вроде транзакции. Ну и код становится гораздо более понятный и красивый.

Просмотров: 251 | Комментариев: 2

Использование TLS для антиотладки

26.10.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter

Использование TLS для антиотладки

TLS (Thread Local Storage) - локальная память потока, предназначенная для связки данных с потоком. Эта структура изначально была создана для решения проблемы совместного доступа к данным в многопоточных приложениях. TLS бывают статичными и динамическими. Углубляться в эти дебри сейчас не будем, для этого есть Джеффри Рихтер с его книгой "Windows для профессионалов". Нас интересует только тот факт, что при использовании статичной TLS появляется возможность выполнять произвольный код до передачи управления на EP. Это можно использовать для обнаружения отладчика еще до того, как он получит управление над программой.

Читать статью целиком »
Просмотров: 426 | Комментариев: 1

Фестиваль острых соусов "Hot Weekend 4.0"

23.10.2021 | Категория: Жизнь в оффлайне | Автор: ManHunter

Фестиваль острых соусов "Hot Weekend 4.0"

Сегодня в Москве прошел Российский фестиваль острых соусов "Hot Weekend 4.0" - уникальное мероприятие для всех, кто обожает острые соусы и специи. На фестивале представили свою огненную продукцию более десятка отечественных производителей. Все можно тут же купить, все можно продегустировать, обо всем можно спросить напрямую у мастеров. Естественно, пропустить такое мероприятие я не мог.

Читать статью целиком »
Просмотров: 419 | Комментариев: 12

Исследование защиты программы PDF Anti-Copy

21.10.2021 | Категория: Темная сторона Силы | Автор: ManHunter

Скриншот программы PDF Anti-Copy

PDF Anti-Copy - программа для защиты содержимого PDF файлов от копирования и преобразования в MS Word, Excel, TXT или другие форматы которые можно редактировать. При этом сам PDF файл можно открыть и просматривать, но скопировать или преобразовать контент будет невозможно. Об этом гордо заявлено в официальных презентациях. А то, что программа по сути является платной надстройкой над тремя бесплатными утилитами - iTextSharp, Ghostscript и pdftk, об этом аффтар решил скромно умолчать. Что ж, приведем весь пакет к единому знаменателю, то есть к разряду бесплатных утилит.

Читать статью целиком »
Просмотров: 621 | Комментариев: 3

Использование SEH для антиотладки

18.10.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter

Использование SEH для антиотладки

В сегодняшней статье разберем использование SEH в качестве антиотладочного приема. Трюк старый, как бивень мамонта, опытным реверсерам обнаружить и обойти его не составит абсолютно никакого труда, а новичкам может быть интересно. Например, в исполняемых файлах, упакованных PECompact, управление с точки входа на процедуру распаковки передается именно таким способом.

Читать статью целиком »
Просмотров: 454 | Комментариев: 0

01 ... 04 05 06 07 08 09 10 ... 344
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2022
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.09 сек. / MySQL: 2 (0.0234 сек.) / Память: 5 Mb
Наверх