The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Создатели CouchDB и SQLite представили UnQL, аналог SQL для ..., opennews (??), 30-Июл-11, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


62. "Создатели CouchDB и SQLite представили UnQL, аналог SQL для ..."  +/
Сообщение от Crazy Alex (??), 31-Июл-11, 02:16 
Вы имели в виду SQL или реляционные базы? SQL - язык достаточно уродский - как я выше писал, он неудобно генерируется и, похоже, тормозно парсится. Не говоря о том, что в тандарт сразу надо было закладывать разделение структуры запроса и таскаемых им данных (причём ни разу не ограничваясь значениями полей) - тогда никаких инъекций не было бы как класса, а генераци стала бы ещё более удобной.

А реляционнные базы - да за что ж их не любить? Отличная штука. Другое дело, что для ряда применений предоставляемые ими гарантии (пресловкутый ACID) избыточны и от части можно отказаться в пользу скорости работы иили удобства репликации. Для других случаев избыточна сама реляционность, так как задача не подразумевает сложной структуры данных. Для третьих (всякие графовые извращения, к примеру) структура данных очень плохо ложится РБД.

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

Ответить | Правка | К родителю #50 | Наверх | Cообщить модератору

68. "Создатели CouchDB и SQLite представили UnQL, аналог SQL для ..."  +/
Сообщение от all_glory_to_the_hypnotoad (ok), 31-Июл-11, 10:55 
> Не говоря о том, что в тандарт сразу надо было закладывать разделение структуры запроса и таскаемых им данных (причём ни разу не ограничваясь значениями полей) - тогда никаких инъекций не было бы как класса, а генераци стала бы ещё более удобной.

Сразу в стандарт ничего не закладывают, сначала идут реализации и потом стандарт их догоняет. Особенно если говорить о 70-80, когда пароли принято было хранить плейн текстом.

Связанные переменные (т.е. разделение данных и запроса) в SQL по факту дажно уже есть в нормальных СУБД и есть разделение на уровне протоколов. Ещё тут стоит заметить, что SQL всего лишь стандарт языка запросов, он _не_ может указать _как_ должно реализовываться разделение переменных. А это значит, что API может предоставлять разделение, но внутри, т.е. на уровне коммуницации между СУБД и клиентом, всё равно может быть плейн SQL.

Делать в запросе динамическими не только данные нельзя и по этому поводу уже написано 100500 статей и книг.

Итого, проблема разделения данных и запроса (и SQL инъеккий) это не проблема стандарта и SQL, это проблема реализации СУБД и SQL. Так исторически складывается, что прогресс в СУБД для быдлокодеров доходит позже всех остальных. Ещё это осложняется замечательным ЯП который используется в связке с этой самой замечательнйо СУБД.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру