(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 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год.
    Microsoft Office 365 Бизнес. Подписка на 1 рабочее место на 1 год
    Microsoft 365 Business Standard (corporate)
    Microsoft 365 Business Basic (corporate)
    Microsoft Windows Professional 10, Электронный ключ
     
    Другие предложения...
     
    Курсы обучения   WWW.ITSHOP.RU
     
    Другие предложения...
     
    Магазин сертификационных экзаменов   WWW.ITSHOP.RU
     
    Другие предложения...
     
    3D Принтеры | 3D Печать   WWW.ITSHOP.RU
     
    Другие предложения...
     
    Новости по теме
     
    Рассылки Subscribe.ru
    Информационные технологии: CASE, RAD, ERP, OLAP
    Безопасность компьютерных сетей и защита информации
    Новости ITShop.ru - ПО, книги, документация, курсы обучения
    Программирование на Microsoft Access
    CASE-технологии
    Delphi - проблемы и решения
    Проект mic-hard - все об XP - новости, статьи, советы
     
    Статьи по теме
     
    Новинки каталога Download
     
    Исходники
     
    Документация
     
     



        
    rambler's top100 Rambler's Top100