- 締切済み
ストアドプロシージャの実行で...
Test_Pro、というストアドプロシージャを実行させたいんですが、 Microsoft OLE DB Provider for SQL Server エラー '80040e14' ストアド プロシージャ 'Test_Pro' が見つかりませんでした。 というエラーが出てしまいます。どうして??? 実行させる為に書いたソースは、 set cmd = Server.CreateObject("ADODB.command") Set cmd.ActiveConnection = conn cmd.CommandText = "Test_Pro" cmd.CommandType = 4 Set rs = cmd.Execute("@a", a) です。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- X-Terra
- ベストアンサー率48% (25/52)
回答No.1
SQL-Serverの設定にもよるかと思うのですが、そのストアドプロシジャーが入っているデータベースは、(接続するユーザーの)デフォルトデータベースですか? もし、そうではないのなら、データベース名をVB上で指定してあげる必要があるのではないかと思うのですが。 cmd.CommandText = "(DB名).Test_Pro" などです。
補足
DB名を記述に加えたら、上手くストアドプロシージャへ進めたんですが、新たなエラーが出てしまって、困ってます。 そのストアドプロシージャの中身って言うのが、 CREATE PROCEDURE [Test_pro] @a int,@b varchar(10) output AS begin if Len(@a)>0 select @b='Found!'; else select @b='Not Found!'; end なんですが、 Microsoft OLE DB Provider for SQL Server エラー '80040e10' プロシージャ 'Test_Pro' にはパラメータ '@b' を指定してください。 というエラーが出てしまうんです。 一体、どこがマズいんでしょ???