Entry tags:
mySQL stored procedures and functions
Я очень хорошо понимаю, почему большая часть логики в mySQL-проектах реализована не в БД, на на application-side.
Потому что реализация хранимых процедур и функций в mySQL донельзя угробищна, например, в части bind-переменных. Особенно после Оракла :)
Даже самое элементарное, вроде SELECT COUNT(*) FROM XXX WHERE ID=:MY_VARIABLE в функции - полная задница, ибо prepared statements разрешены только в процедурах, а из них не вернуть значение.
А потом эти программеры выходят на "большие" СУБД.
Поубывыв бы.
Потому что реализация хранимых процедур и функций в mySQL донельзя угробищна, например, в части bind-переменных. Особенно после Оракла :)
Даже самое элементарное, вроде SELECT COUNT(*) FROM XXX WHERE ID=:MY_VARIABLE в функции - полная задница, ибо prepared statements разрешены только в процедурах, а из них не вернуть значение.
А потом эти программеры выходят на "большие" СУБД.
Поубывыв бы.
no subject
no subject
На mySQL я зол сегодня. Нечасто обращаюсь к этой БД, но тут в проекте понадобилось. Не смог сделать простой генератор уникальных случайных ID в виде хранимой процедуры.
Обходных способов дофига, но красиво "по-оракловому" не вышло.
no subject
Причем мне тут пытались доказать, что PL/v8 работает с jsonb-полями в базе эффективнее чем PL/Python и PL/Perl хотя в 11-й версии для Pl/Python и PL/Perl есть нативное отображение jsonb в структуры соответствующего языка без промежуточной сериализации в строку, а для v8 (пока) нет.
no subject
no subject
А что не так с PHP как языком, а не как паттерном применения "вставьте меня в HTML"?
no subject
Более того, почти все серьезные php-фреймоврки вынуждены его де факто изобретать заново, преодолевая сопротивление языка.
Потом там оно как-то бессистемно спроектировано напихали всего подряд, а потом стали пытаться навести на это секьюрити. То есть оно insecure by design, хотя торчит в принципиально hostile среду.
Впрочем, я как-то пытался лет двадцать назад спроектировать secure by design язык для веб-приложений. И понимаю почему, даже если это получится, толпы хомячков этим пользоваться не смогут.
no subject
С безопасностью... Ну, да, это проблема начального дизайна, ещё со времён PHP/FI.
Хомячкам же редко надо что-то серьёзное на бэкенде, а вот возможность встроить в статическую HTML-страничку немножко серверного кода очень заманчива.
no subject
no subject
no subject
no subject
Ведь если у них в базе PL/V8, на бэкэнде nodejs и в браузере понятно что, им не надо переключаться между синтаксисами.
Хотя на мой взгляд, переключаться неудобно между близкими синтаксисами. Вот между perl и python - плохо.
А между make и shell или shell и c - нет. Они разные и решают разные задачи, поэтому переключение естественно.
no subject
no subject
no subject
no subject
Если уж чего отгружать, то адабаса какого-нибудь.
no subject
no subject
no subject
no subject
Будут генерить. Полезный. 200 знаков в минуту :)
Уж поверь опытному начальнику сборочного цеха, это не работает. По крайней мере, если у тебя нет роты хомячков-чистокодеров. Ибо быстронаписанный "полезный код" чреват тремя годами последующих багфиксов. Если людей гнать, они пишут как быстрее, а не как правильно подумать, а ошибки проектирования на раннем этапе обходятся ой как дорого.
no subject
no subject
no subject
no subject
no subject