Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

OCI, Parse, Prepare, курсоры и т.п.


Labert ©   (2004-08-03 11:46:00) 

в интерфейсе OCI, да и в других тоже перед выполнением SQL-запроса нужно его разбирать (Parse) и подготавливать (Prepare)

Объясните мне, старому дураку, зачем это нужно и что из себя представляют эти процессы?
Я ведь так понимаю: запрос - это просто текст, посылаешь его на сервер - сервер возвращает результат (или не возвращает)

Зачем разбор и подготовка на стороне клиента?

Кроме того, зачем нужны BINDы параметров?
Не проще ли засунуть подставляемые значения в текст запроса?


Labert   (2004-08-03 12:19:00) [1]

спасибо
купить - не куплю, но почитаю обязательно


roottim   (2004-08-03 12:09:00) [2]

Том Кайт (том1) "ORACLE для профессионалов" расписано крайне понятно, и ежели дальше собирайтесь работать с ораклом.. советую купить..


Sergey13   (2004-08-03 12:08:00) [3]

2Labert   (03.08.04 12:04)
>что делается при разборе и подготовке запроса?
В основном разбор синтаксиса и проверка прав на действия. Кроме того составление плана выполнения.


Sergey13   (2004-08-03 12:07:00) [4]

2Labert   (03.08.04 11:46)
>Я ведь так понимаю: запрос - это просто текст, посылаешь его на сервер - сервер возвращает результат (или не возвращает)
А если твой запрос содержит "типа мне надо пасматреть канкретные цены"? Тоже запрос, но сервер его не поймет.

>Зачем разбор и подготовка на стороне клиента?
А он есть? Сомневаюсь. Скорее на клиенте только команды для сервера. Хотя может я и ошибаюсь.

>Кроме того, зачем нужны BINDы параметров?
см [1].

2Sergey_Masloff   (03.08.04 11:53)
>А кэш будет все расти и расти так как каждый новый текст запроса будет уникальным.
Ну прям как расширяющаяся вселенная? 8-)


Labert   (2004-08-03 12:04:00) [5]

нельзя ли поподробнее
что делается при разборе и подготовке запроса?


Sergey_Masloff   (2004-08-03 11:53:00) [6]

Labert   (03.08.04 11:46)  
>Кроме того, зачем нужны BINDы параметров?
>Не проще ли засунуть подставляемые значения в текст запроса?
Разбор запроса операция тяжелая (сравнительно). Результат разбора хранится в специальном кэше. Если запрос параметризованый то запрос не разбирается а прямо берется из кеша, делается связывание параметров и вперед. Если пользователей много это способно на порядке увеличить производительность сервера. Если же значения параметров сразу в запрос подставлять - вероятность найти в кэше точно такой же близка к 0. Но на этот поиск время все равно будет тратиться. А кэш будет все расти и расти так как каждый новый текст запроса будет уникальным. Вобщем запросы с параметрами зашитыми в текст - верный способ поставить сервер на колени.


Наверх

Титульная страница Поиск, карта сайта Написать письмо