Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вызов в Access функции SQL Server / 13 сообщений из 13, страница 1 из 1
09.02.2004, 14:07
    #32402734
NataKolenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
Подскажите пожалуйста, как в форме вызвать функцию, которую я создала на SQL Server. Это лучше сделать через объект Recordset или Command. Просто обращаться к функции по имени не позволяет.
...
Рейтинг: 0 / 0
09.02.2004, 14:55
    #32402872
IgorM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
Через Recordset проще, в adp, для скалярной функции:
Код: plaintext
1.
Me.FormTextFieldName = _
CurrentProject.Connection.Execute( "select dbo.udfFunctionName(0 )").Fields( 0 )

можно и через Command:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
 Dim cmd As ADODB.Command
 Set cmd = New ADODB.Command
 cmd.Parameters.Append cmd.CreateParameter( "@RETURN_VALUE" , adDouble, adParamReturnValue)
 cmd.Parameters.Append cmd.CreateParameter( "@iInputParamName" , adInteger, adParamInput, , ParamValue)
 cmd.CommandText =  "udfFunctionName" 
 cmd.CommandType = adCmdStoredProc
 Set cmd.ActiveConnection = CurrentProject.Connection
 cmd.Execute
...
Рейтинг: 0 / 0
09.02.2004, 15:34
    #32402966
alex_sic
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
NataKolenko
а что за функции можно создавать на SQL-сервере? Каким оператором ?
...
Рейтинг: 0 / 0
10.02.2004, 06:53
    #32403523
Pavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
1. user-defined functions (UDF)
2. CREATE FUNCTION

p.s.
с версии 2000.
...
Рейтинг: 0 / 0
10.02.2004, 07:45
    #32403544
NataKolenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
IgorM большое спасибо за подсказку. Вопрос: Где Вы обучались работе с ADO, я только начала переходить на ADO с DAO, и пока что-то тяжеловато, может что-то подскажите? Заранее спасибо
...
Рейтинг: 0 / 0
10.02.2004, 11:53
    #32403920
IgorM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
К сожалению, из литературы я вряд ли что могу посоветовать, честно говоря, не знаю текущее положение дел. Если вот только двухтомник Кена Гетца с сотоварищами по Access 2002... Я же пользуюсь в основном хелпом и msdn.
...
Рейтинг: 0 / 0
10.02.2004, 12:04
    #32403951
Хам трамвайный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
"Где Вы обучались работе с ADO"
университет, дамочка, университеты
надоть заканчивать.
енто вам не хухры-мухры.
енто - мухры-хухры.
...
Рейтинг: 0 / 0
10.02.2004, 12:05
    #32403953
NataKolenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
IgorM у меня опять вопрос про вызов скалярной функции, я воспользовалась обектом COMMAND, И ПОСЛЕ cmd.execute
объявила: set rs = new adodb.recordset
rs.open
me.полеФормы = rs.fields(0).value
не работает, Что на ваш взгляд неверно или нужен вообще другой путь , чтобы присвоить значение функции полю формы
И еще вопрос обекты Recordset, Command тоже нужно закрывать после использования как в DAO
...
Рейтинг: 0 / 0
10.02.2004, 12:21
    #32403972
IgorM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
Вы немного не разобрались в работе ADODB.Command.
После вызова cmd.Execute происходит выполнение функции, которая возвращает результат в параметре @RETURN_VALUE, следовательно после cmd.Execute следует написать:
Код: plaintext
Me.полеФормы = cmd.Parameters( "@RETURN_VALUE" )

ADODB.Recordset в первом случае используется для получения результата выполнения запроса: select dbo.udfFunctionName(0)
...
Рейтинг: 0 / 0
10.02.2004, 12:46
    #32404030
IgorM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
NataKolenkoИ еще вопрос обекты Recordset, Command тоже нужно закрывать после использования как в DAO

В общем, Access обычно сам выполняет все завершающие действия, когда переменная выходит из области действия, но делать это самому считается хорошим стилем программирования. Вот что по этому поводу говорит MS:
http://msdn.microsoft.com/library/en-us/dnacchbk/html/acsybex_chap6.asp
...Access will destroy the reference when the variable goes out of scope. If your variable is the only reference to the object in memory, the object in memory will automatically be destroyed (that is, removed from memory). If you have qualms about Access releasing the memory your object references use, you can explicitly delete the linkage by setting the variable equal to the predefined value Nothing...

...Although these steps aren't required, and we, too, tend to count on Access for these housekeeping details, you may want to consider these options...
...
Рейтинг: 0 / 0
10.02.2004, 13:26
    #32404097
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
2IgorM
>Вот что по этому поводу говорит MS:

Только это говорит не MS (она отмалчивается), а Гетц "Access 2000 Developer's Handbook, Volume 1,
by Ken Getz, Paul Litwin, and Mike Gilbert, by permission of SYBEX Inc", глава 6 "ActiveX Data Objects", которая включена в MSDN
...
Рейтинг: 0 / 0
10.02.2004, 14:01
    #32404157
IgorM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
Senin ViktorТолько это говорит не MS (она отмалчивается)...

Ты считаешь, что в этом случае мнение редакции может не совпадать с мнением автора? Такого дискл(а/е)ймера я там не видел.
...
Рейтинг: 0 / 0
10.02.2004, 14:11
    #32404182
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов в Access функции SQL Server
2IgorM
Ты считаешь, что в этом случае мнение редакции может не совпадать с мнением автора?

Ну про их мнения я не знаю, а вот про ясность данного вопроса в справочной документации к Access'у у меня сумнение.
Да и справедливость, по отношению к Гетцу, хотел восстановить
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вызов в Access функции SQL Server / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]