Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.18;
Скачать: CL | DM;

Вниз

пример TStoredProc   Найти похожие ветки 

 
Destup   (2005-06-07 17:03) [0]

Приветствую всех.

Начальство поставило задачу срочно изучить хранимые процедуры (MS SQL + Delphi 5) исключительно через TStoredProc (т.е. без ADO и TQuery).
И набросало такой план изучения -

1. Создание и вызов ХП.
2. Передать ХП параметр по ссылке (???)
3. Реализовать и использовать ХП возвращающую курсор.
4. ... возвращающую несколько курсоров.

вроде пока всё.

С первым я справился (хоть раньше на Делфи почти не кодил)
А вот со вторым ... это как ?

StoredProc1.Params.ParamByName("@num").Value := 5;

Это я прямо указал что хочу передать в ХП, а как по ссылке ?

Третье ... что такое курсор я смутно представляю (набор данных возвращаемых sql запросом ?)
Ну написал я   StoredProc1.Active := True;
и в DBGrid посыпались данные (курсор ?) через DataSource.
А ... а где мне получить указатель на этот курсор не выводя его в DBGrid ?
А если ХП вернула 2 и более курсоров ?

Весь инет облазил, не нашёл примера.
Помогите кто чем может, желательно маленькими кусочками кода.

Спасибо.
Евгений.


 
Val ©   (2005-06-07 17:05) [1]

Blob тоже через TStoredProc?


 
Danilka ©   (2005-06-07 17:07) [2]


> исключительно через TStoredProc (т.е. без ADO и TQuery).

хм. TStoredProc - это значит через BDE. На мой взгляд, с MSSQL все-таки намного предпочтительнее работать через АДО, чем через БДЕ.
А у АДО есть TADOStoredProc, аналог БДЕ-ного.


 
Destup   (2005-06-07 17:36) [3]

> Blob тоже через TStoredProc?
... даже не знаю, а что это такое :)))

> предпочтительнее работать через АДО, чем через БДЕ.
думаю перейдём на АДО, но не скоро.


 
Destup   (2005-06-07 17:38) [4]

> А у АДО есть TADOStoredProc, аналог БДЕ-ного.
Я думаю, что освоив BDE не сложно перейти на ADO.
Но пока ... даже с первым не выходит


 
Danilka ©   (2005-06-07 21:29) [5]

[4] Destup   (07.06.05 17:38)
Нет никакого смысла сейчас осваивать БДЕ. Во-первых, в БДЕ "заморожена" поддержка MSSQL на уровне версии 6.5 (если не ошибаюсь).
Во-вторых, БДЕ изначально ориентирован на файл-серверные технологии.
А АДО, можно сказать, самая что ни на есть родная технология доступа к MSSQL, все возможности этой СУБД можно использовать работая через АДО.
Вобщем, можно запросто начинать с АДО, причем, статей и книг в тему можно найти в инете просто море.


 
evvcom ©   (2005-06-08 10:47) [6]


> Во-первых, в БДЕ "заморожена" поддержка MSSQL на уровне версии 6.5

Я в давнишние времена работал с MSSQL 6.5 через BDE без проблем, но без блобов, о блобах ничего не скажу.

> 2. Передать ХП параметр по ссылке (???)

Действительно ??? MSSQL может вернуть значение в параметре (см. в параметрах OUTPUT), но после вызова ХП это возвращенное значение все равно придется читать вручную (за исключением некоторых случаев с UpdateSQL). Плюс обрати внимание на GetResults.

> 3. Реализовать и использовать ХП возвращающую курсор

Обычный SELECT без INTO в ХП возвращает курсор.

> 4. ... возвращающую несколько курсоров

Несколько SELECT без INTO в ХП. Есть метод NextRecordSet, но не в TStoredProc :)


 
Desdechado ©   (2005-06-08 10:58) [7]

параметр по ссылке ты не передашь по определению - SQL-сервер работает на другой машине в своем адресном пространстве.
так что только по значению


 
Val ©   (2005-06-08 11:18) [8]

Коллеги, м.б. в данном контексте под параметром по ссылке имеется просто in out параметр? думаю следует уточнить у задающих (преподов/начальства, etc.).



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

Текущий архив: 2005.07.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.032 c
11-1103104418
MTsv DN
2004-12-15 12:53
2005.07.18
Не сохраняются размеры ToolBar


1-1119681562
Joy
2005-06-25 10:39
2005.07.18
RxRichEdit


1-1120076921
GanibalLector
2005-06-30 00:28
2005.07.18
Проблемы с OLE DB


14-1119730079
Unleashed
2005-06-26 00:07
2005.07.18
Где бы найти работу.....


14-1119373720
ANB
2005-06-21 21:08
2005.07.18
Есть ли инсталлятор, позволяющий работать с Oracle ?