MSDE FunClub
Microsoft Data Engine FunClub
MSDE初心者向けメーリングリスト過去ログ[1659]番
 
[TOP]>[MSDE初心者向けメーリングリスト過去ログ(1659番)]>[ウィンドを閉じる]
 
SQLServer2005時代でも
開発の基本は T-SQL
上巻で T-SQL の基礎作り
 
SQLServer2005時代でも
運用の基本はバックアップ
下巻でバックアップ手法を学びましょう
PASSJ人気コンテンツで学んだ後は下巻でさらなる学習を!
 
ウィンドを閉じる
MSDE/SQLServer FAQ
MSDE / MSDE2000 
技術情報サポート
初心者向け
メーリングリスト
過去ログの表示
技術者向け
メーリングリスト
過去ログの表示
メーリングリスト
活動状況の
表示
MSDE TOP メニュー
MSDEトップメニューに移動します
 

 
システムストアドプロシージャを ACCESSのフォームの VBAに

Date: Tue, 27 Sep 2005 17:42:02 +0900
From: who@sub.example.jp


--0__=C6BBFA1ADFBAE3988f9e8a93df938690918cC6BBFA1ADFBAE398
Content-type: text/plain; charset=ISO-2022-JP

質問させていただきます。

システムストアドプロシージャをAccessのフォーム上でVBAを使って組込んで使用で

きるんだと思いますが、書籍等ではあまりサンプルを見たことがないため教えて下

さい。

具体的には、sp_password を使って、「パスワードの変更ができる」アプリを作り

たいのですがサンプルをどのように作れば良いでしょうか。



やりたいことは、「初期画面にデフォルト値としてLOGIN名、OLDPASSWORDを表示

し、NEWPASSWORDを入力することで、パスワード変更を行う。さらに、実行後、LOGIN

名、OLDPASSWORD、NEWPASSWORDをフォームに表示する。」

実際には次のようなVBAが考えられますでしょうか。この中で、初期画面に2つのデ

フォルト値を表示、実行後のフォームへの表示の記述を教えて下さい。



Dim cn As ADODB.Connection
Dim cmd As ADODB.Command
Dim rs As ADODB.Recordset
Dim parm As ADODB.Parameter
Dim parm1 As ADODB.Parameter
Dim parm2 As ADODB.Parameter
Dim cmd1 As ADODB.Command
Dim Msg As String
Dim str1 As String
Private Sub NEWPASS_BeforeUpdate(Cancel As Integer)
   Set cn = Application.CurrentProject.Connection
  Set cmd = New ADODB.Command
  Set rs = New ADODB.Recordset
  Set parm = New ADODB.Parameter
  With cmd
      .ActiveConnection = cn
      .CommandType = adCmdStoredProc
      .CommandText = "SP_password"
       Set parm = .CreateParameter(, adVarChar, adParamInput, 11,
Forms(cFormName_P)![OLDPASS])
      .Parameters.Append parm
      Set parm1 = .CreateParameter(, adVarChar, adParamInput, 11,
Forms(cFormName_P)![NEWPASS])
      .Parameters.Append parm1
      Set parm2 = .CreateParameter(, adVarChar, adParamInput, 11,
Forms(cFormName_P)![LOGIN])
      .Parameters.Append parm1
     .Execute

 End With
     Set rs = Nothing
     [OLDPASS].をフォームのフィルドに表示。
     [NEWPASS] をフォームのフィルドに表示。
     [LOGIN]をフォームのフィルドに表示。

 End Sub


seki
--0__=C6BBFA1ADFBAE3988f9e8a93df938690918cC6BBFA1ADFBAE398
Content-type: text/html; charset=ISO-2022-JP
Content-Disposition: inline

<html><body><font face="MS Pゴシック">質問させていただきます。</font><br>
<font face="MS Pゴシック">システムストアドプロシージャをAccessのフォーム上でVBAを使って組込んで使用できるんだと思いますが、書籍等ではあまりサンプルを見たことがないため教えて下さい。</font><br>
<font face="MS Pゴシック">具体的には、sp_password を使って、「パスワードの変更ができる」アプリを作りたいのですがサンプルをどのように作れば良いでしょうか。</font><br>
<br>
<font face="MS Pゴシック">やりたいことは、「初期画面にデフォルト値としてLOGIN名、OLDPASSWORDを表示し、NEWPASSWORDを入力することで、パスワード変更を行う。さらに、実行後、LOGIN名、OLDPASSWORD、NEWPASSWORDをフォームに表示する。」</font><br>
<font face="MS Pゴシック">実際には次のようなVBAが考えられますでしょうか。この中で、初期画面に2つのデフォルト値を表示、実行後のフォームへの表示の記述を教えて下さい。</font><br>
<br>
<tt>Dim cn As ADODB.Connection</tt><br>
<tt>Dim cmd As ADODB.Command</tt><br>
<tt>Dim rs As ADODB.Recordset</tt><br>
<tt>Dim parm As ADODB.Parameter</tt><br>
<tt>Dim parm1 As ADODB.Parameter</tt><br>
<tt>Dim parm2 As ADODB.Parameter</tt><br>
<tt>Dim cmd1 As ADODB.Command</tt><br>
<tt>Dim Msg As String</tt><br>
<tt>Dim str1 As String</tt><br>
<tt>Private Sub NEWPASS_BeforeUpdate(Cancel As Integer)</tt><br>
<tt> &nbsp; Set cn = Application.CurrentProject.Connection</tt><br>
<tt> &nbsp;Set cmd = New ADODB.Command</tt><br>
<tt> &nbsp;Set rs = New ADODB.Recordset</tt><br>
<tt> &nbsp;Set parm = New ADODB.Parameter</tt><br>
<tt> &nbsp;With cmd</tt><br>
<tt> &nbsp; &nbsp; &nbsp;.ActiveConnection = cn</tt><br>
<tt> &nbsp; &nbsp; &nbsp;.CommandType = adCmdStoredProc</tt><br>
<tt> &nbsp; &nbsp; &nbsp;.CommandText = &quot;SP_</tt><font face="MS Pゴシック">password</font><tt>&quot;</tt><br>
<tt> &nbsp; &nbsp; &nbsp; Set parm = .CreateParameter(, adVarChar, adParamInput, 11, Forms(cFormName_P)![OLDPASS])</tt><br>
<tt> &nbsp; &nbsp; &nbsp;.Parameters.Append parm</tt><br>
<tt> &nbsp; &nbsp; &nbsp;Set parm1 = .CreateParameter(, adVarChar, adParamInput, 11, Forms(cFormName_P)![NEWPASS])</tt><br>
<tt> &nbsp; &nbsp; &nbsp;.Parameters.Append parm1</tt><br>
<tt> &nbsp; &nbsp; &nbsp;Set parm2 = .CreateParameter(, adVarChar, adParamInput, 11, Forms(cFormName_P)![LOGIN])</tt><br>
<tt> &nbsp; &nbsp; &nbsp;.Parameters.Append parm1 </tt><br>
<tt> &nbsp; &nbsp; .Execute</tt><br>
<tt> </tt><br>
<tt> End With</tt><br>
<tt> &nbsp; &nbsp; </tt><tt>Set rs = Nothing</tt><br>
<tt> &nbsp; &nbsp; [OLDPASS].をフォームのフィルドに表示。</tt><br>
<tt> &nbsp; &nbsp; [NEWPASS] をフォームのフィルドに表示。</tt><br>
<tt> &nbsp; &nbsp; [LOGIN]をフォームのフィルドに表示。</tt><br>
<tt> &nbsp; &nbsp; &nbsp;</tt><br>
<tt> End Sub</tt><br>
<br>
<font face="MS Pゴシック">seki</font></body></html>
--0__=C6BBFA1ADFBAE3988f9e8a93df938690918cC6BBFA1ADFBAE398--



[MSDE/SQLServerに関して、今、どんなことにお困りですか?]
よろしければお困りの内容を、電子メールで教えて下さい。
質問を電子メールで作成する


[ウィンドを閉じる]

[MSDE/SQLServer FAQ ]

[MSDE / MSDE2000 技術サポート情報一覧]

MSDE TOP ページに移動する

 
 
 
 
 
 
 
MSDE FunClubに関するご意見・ご要望等ございましたら、
msdefun@horikawa.ne.jp までご連絡下さい。
MSDEを始めとする各種データベースシステムの開発、コンサルタントに関するご要望等は、
msdedev@horikawa.ne.jp までご連絡下さい。