(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Передача входных параметров в MS Access

Источник: msdatabase

Передача параметров в хранимую процедуру

  • в свойстве формы Входные параметры формы
    синтаксис:
    @Имя_переменной SQL_тип_переменной = имя_локального_поля_данных_или_пользовательская_функция

    Прим:
    В формах способ работает только если не указаны значения параметров по умолчанию
    SQL_тип_переменной можно не указывать

    @myvar int = GetMyVar()
    @myvar = GetMyVar()
    @myvar = Forms!МояФорма!КонтролФормы
    @mydate = fix(VBDATE) (во вх. параметрах формы)
    @mydate = fix(VBDATE)-2 (кроме вх.параметров формы - при программном формировании рекордсета)

  • через пробел после имени процедуры и каждый параметр в порядке их описания в процедуре - через запятую:
    Dim rst As New ADODB.Recordset

    Rst.Open "exec Имя_ХранПр '" & Me.MyString & "', " & Me.MYINT2 & ", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

    в данном примере из полей формы данные передаются в процедуру , открываемую рекордсетом. Так как Me.MyString при передаче имеет строковый тип - добавлены одинарные кавычки
    в простейшем виде строка имеет вид
    rst.open "my_proc_name 1,2,3 " , CurrentProject.Connection, adOpenKeyset, adLockOptimistic

    примечание: ключевое слово Exec в конкретном случае указывать необязательно

  • создать команду адо и добавить к ней перед запуском параметр
    данный способ позволяет не только передавать параметры, но и получать их обратно
    Dim cmd As New ADODB.Command
    cmd.ActiveConnection = CurrentProject.Connection
    cmd.CommandText = "sp_daystatus" 'Имя хранимой процедуры
    cmd.CommandType = adCmdStoredProc
    cmd.Parameters.Append cmd.CreateParameter("@Paramdata", adInteger, adParamInputOutput)
    cmd.Parameters(0) = clng(Mydata)-2
    cmd.Execute 'Запускаем
    MyReturnParam = cmd.Parameters(0) ' Присваиваем возвращаемый параметр переменной
    Set cmd = Nothing

    Прим. : Если в хранимой процедуре в конце стоит Return то возвратить она сможет только числовой параметр. Чтобы она возвращала строку - уберите из нее Return

  • Ссылки по теме


     Распечатать »
     Правила публикации »
      Написать редактору 
     Рекомендовать » Дата публикации: 05.12.2007 
     

    Магазин программного обеспечения   WWW.ITSHOP.RU
    Microsoft Office для дома и учебы 2019 (лицензия ESD)
    Microsoft Office 365 Бизнес. Подписка на 1 рабочее место на 1 год
    Microsoft 365 Business Basic (corporate)
    Microsoft Office 365 Профессиональный Плюс. Подписка на 1 рабочее место на 1 год
    Microsoft Office 365 для Дома 32-bit/x64. 5 ПК/Mac + 5 Планшетов + 5 Телефонов. Подписка на 1 год.
     
    Другие предложения...
     
    Курсы обучения   WWW.ITSHOP.RU
     
    Другие предложения...
     
    Магазин сертификационных экзаменов   WWW.ITSHOP.RU
     
    Другие предложения...
     
    3D Принтеры | 3D Печать   WWW.ITSHOP.RU
     
    Другие предложения...
     
    Новости по теме
     
    Рассылки Subscribe.ru
    Информационные технологии: CASE, RAD, ERP, OLAP
    Безопасность компьютерных сетей и защита информации
    Новости ITShop.ru - ПО, книги, документация, курсы обучения
    CASE-технологии
    Программирование на Microsoft Access
    Реестр Windows. Секреты работы на компьютере
    Adobe Photoshop: алхимия дизайна
     
    Статьи по теме
     
    Новинки каталога Download
     
    Исходники
     
    Документация
     
     



        
    rambler's top100 Rambler's Top100