запуск процедур базы MSSQL из Excel

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
SCapon
Сообщения: 5
Зарегистрирован: 07 дек 2004, 15:56

Здравствуйте господа! Возникла такая проблема:
Нужно из-под excel запускать процедуру с передачей параметров, хранимую на MSSQL сервере и получать результат в виде таблицы.
Каким образом можно организовать это средствами VB?

Другими словами как выполнить запрос из-под VB, например:

exec dbo.Dic_Certificate_Get '01012004'

чтобы при этом выполнялась процедура dbo.Dic_Certificate_Get,
хранимая на сервере? И Как вообще из-под VB к этому серверу обращаться?
mosquit
Сообщения: 10
Зарегистрирован: 19 ноя 2004, 16:21
Откуда: Москва

Например через ADO:

1. Добавляем в Tools -> References библиотеку Microsoft ActiveX Data Objects 2.x Library

2.Пишем что-то вроде этого:

Код: Выделить всё

Dim cnn As ADODB.Connection
Dim r As ADODB.Recordset
ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;Data Source=DatabaseName" 
'(Вместо DatabaseName подставить реальное имя)
UserId = "..."
Password = "..."
cnn.Open ConnectionString, UserId, Password
'выполняем процедуру
cnn.Execute "exec dbo.Dic_Certificate_Get '01012004'"
'теперь читаем данные
Set r = cnn.Execute("select * from ...")

Вообще, параметром Execute может быть любая команда SQL.
SCapon
Сообщения: 5
Зарегистрирован: 07 дек 2004, 15:56

спасибо
Ответить