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

Вниз

Как создать DLL для MS SQL Server 2000?   Найти похожие ветки 

 
Optimisticus   (2004-02-10 19:58) [0]

Доброго времени суток!
Не кинет ли кто-нибудь простой пример, как создать DLL для подключения к MS SQL Server 2000 в качестве внешней процедуры?


 
ZrenBy ©   (2004-02-10 20:02) [1]

Extended Stored Procedure Dll чтоли надо сделать ?

Ну тогда VS C++ и вперед


 
vuk ©   (2004-02-10 20:53) [2]

>Ну тогда VS C++ и вперед
Ну зачем же? :o)
Просто нужно сходить на http://www.overbyte.be
Там в разделе Products\More под названием "SQL Server Open Data Services" есть архив с модулями импорта, для разработки Extended SP для MS SQL.


 
Nikolay M. ©   (2004-02-10 22:20) [3]

Или вот еще, сгодится для начала:
http://delphibase.endimus.ru/?action=viewtopic&topic=basemssql


 
Optimisticus   (2004-02-11 14:58) [4]

Спасибо! Буду разбираться!


 
Optimisticus   (2004-02-11 16:45) [5]

to Vuk

при запуске EXEC xp_delphi_proclist из указанного архива возникает ошибка:
"ODBC: Msg 0, Level 19, State 1
SqlDumpExceptionHandler: Process 51 generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.
Connection Broken",
что это может быть? инсталяция dll выполнена.

вообще задача стоит в том, чтобы получать на MS SQL набор данных.


 
Alex Konshin ©   (2004-02-12 04:43) [6]

Можешь посмотреть пример SQLAlert с моего сайта. Там внутри есть перевод заголовков ODS на Delphi.
Заодно это тоже пример на организацию обратной связи с MS SQL.


 
Alex Konshin ©   (2004-02-12 04:54) [7]

вообще задача стоит в том, чтобы получать на MS SQL набор данных.
А в каком виде ты будешь отдавать эти данные и куда?
Получить - не проблема, упаковать и отправить получателю - вот где может быть проблема. Если это не проблема, что ж, тем лучше.
Я когда дойду до дома постараюсь вырезать кусок кода, где я читаю данные. Реально там ничего сверхестественного нет.


 
Optimisticus   (2004-02-13 10:20) [8]

to Alex Konshin

Справедлевое замечание. Я не точно выразился, полная схема такова: на MSSQL должен быть job, который запускает Extended SP с параметрами, и получает результат (как значение, так и набор данных).
Сверхестественного действительно нет, но иногда возникают ошибки (вроде той что я указал выше), которая непонятно откуда берется - то ли я напартачил, то ли ошибка библиотеки.
На сайт зайду, но если Вы пришлете, то, что на ваш взгяд могло бы помочь мне разобраться в вопросе. Спасибо!


 
Optimisticus   (2004-02-13 16:01) [9]

С возвратом одного значения я разобрался, а вот как вернуть набор данных непойму :(. Как написать процедуру типа xp_dirtree в MS  SQL Srv2000.


 
Nikolay M. ©   (2004-02-13 18:04) [10]

Загляни в
\Program Files\Microsoft SQL Server\80\Tools\Devtools\Samples\ODS\


 
Alex Konshin ©   (2004-02-13 22:12) [11]

Я и впрямь забыл дома посмотреть... Sorry.

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


 
Optimisticus   (2004-02-16 19:36) [12]

Всем спасибо!!! В основах разобрался, дальше сам буду ;). Но если у кого будут полезные советы/замечания - пишите, будут рад ознакомиться.

Кстати, ошибка о которой я писал, возникала из-за того, что автор с http://www.overbyte.be не корректно работал с памятью.


 
Optimisticus   (2004-02-18 16:46) [13]

Еще раз приветствую: возникла трудность  с возвратом из Extended SP выборки с символьным полем длиной > 255. Инциализируется столбец так:

srv_describe( SrvProc, i+1, PChar(qrADO.Fields[i].FieldName), SRV_NULLTERM, SRVVARCHAR, 500, SRVVARCHAR, 0, nil);

Спасибо


 
Optimisticus   (2004-02-18 17:01) [14]

Дополнение:
Причем если размер ставить 255 - то возвращается все хорошо (для строк малого размера конечно), а если 500 -то поле пустое (не NULL!, а именно пусто)


 
just me   (2004-02-18 20:01) [15]

Если ходишь за данными через DB-Library, то так и должно быть - varchar имеет наибольшую длину 255


 
optimisticus   (2004-02-19 14:39) [16]

to <just me>
нет через ADO...
А как бАльшие строки возвращать? Пока это не критично но интересно...



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
14-1077706123
}|{yk
2004-02-25 13:48
2004.03.28
Модераторам


4-1074512647
idr
2004-01-19 14:44
2004.03.28
Scroll-лирование клиентской области окна


1-1078572591
clapan
2004-03-06 14:29
2004.03.28
Здравствуйте, подскажите как работать с NMSMTP


3-1078074734
Zelius
2004-02-29 20:12
2004.03.28
Кто работал с EasyTable?


14-1077806764
syte_ser78
2004-02-26 17:46
2004.03.28
eDonkey





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский