Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];

Вниз

OCI, Parse, Prepare, курсоры и т.п.   Найти похожие ветки 

 
Labert   (2004-08-03 11:46) [0]

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

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

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

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


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

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


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

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


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

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

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

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

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


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

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


 
roottim ©   (2004-08-03 12:09) [5]

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


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

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



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.034 c
3-1091524978
Zabludshiy
2004-08-03 13:22
2004.08.29
заполнение CLOB поля в oracle 8


14-1092150432
ИМХО
2004-08-10 19:07
2004.08.29
BrainBench: кому жаловаться?


8-1086849701
X-Disa
2004-06-10 10:41
2004.08.29
TImage c масштабированием


1-1092238973
Случайно забежавший
2004-08-11 19:42
2004.08.29
Кнопки, созданные во время выполнения приложения


1-1092212250
Frozzen
2004-08-11 12:17
2004.08.29
TBitMap выдает Exception





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский