• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ASPでのMySQLストアドプロシージャの実行)

ASPでのMySQLストアドプロシージャの実行方法

temtecomai2の回答

  • ベストアンサー
回答No.2

#1 です。 ここの情報なんかはどうでしょうか。 http://bugs.mysql.com/bug.php?id=15635 なんかバグっぽい感じですね。MyODBC 3.51.13 あたりから修正されてるっぽいようですが。

mihocha
質問者

お礼

今まで、MyODBC 3.51.12 を使用していました。 現在の最新と思われるMyODBC 3.51.19 を入れて試しましたら 正常に動作しました。 temtecomai2さん どうもありがとうございました。 本当、助かりました。

関連するQ&A

  • ストアドプロシージャの実行で...

    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) です。

  • ストアドプロシージャの実行について

    asp.net から sqlserver のストアドプロシージャを実行させる勉強をしています。 作成されているはずのストアドプロシージャを実行できずに困っています。 webformにテキストボックス、ボタン、データグリッドを貼り付け、ストアドプロシージャを作成し下記のプログラムを実行させるのですが上手くいきません。 (テキストボックスに任意で入力された数値のデータをボタンを押すと表示するものです) <エラー内容>→ ストアド プロシージャ 'proc1' が見つかりませんでした Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim cn As New SqlConnection Dim cmd As New SqlCommand cn.ConnectionString = "接続文字列" cmd.Connection = cn cmd.CommandText = "proc1" cmd.CommandType = System.Data.CommandType.StoredProcedure Dim p1 As SqlParameter = cmd.Parameters.Add("@param1", System.Data.SqlDbType.Int) p1.Value = TextBox1.Text cn.Open() Dim dr As SqlDataReader = cmd.ExecuteReader DataGrid2.DataSource = dr DataGrid2.DataBind() dr.Close() cn.Close() end sub ストアドproc1(場所:Northwind)の内容↓ CREATE procedure proc1 @param1 int as select * from products where categoryID=@param1 どなたか原因のわかる方がいれば、宜しくお願いします。

  • MySQLのストアドプロシージャについて

    MySQL5.6のストアドプロシージャが返すSELECT結果のフェッチ方法について教えてください。 delimiter $ create procedure sample_proc() begin select * from TEST_TBL; end$ の様なストアドプロシージャがあり、これを他のストアドプロシージャから呼び出して、 ループしながらフェッチしたいのですが、どうすればよいでしょうか。

  • バッチで実行するVBScriptからのストアドプロシージャの実行

    VBスクリプトでDBにアクセスし、ストアドプロシージャを実行したいのですが、実行できなくて困っています。ADODB.Commandを使わずに、ADODB.Connection.ExecuteでCommandTextを実行するとレコードを取得することができるので、DBにコネクトすることはできているようなのですが、ストアドプロシージャを実行することができません。どなたか原因分かる方いらっしゃいますでしょうか。このスクリプトはASPではなく、バッチで実行します。よって参照設定ができないので、ComandTypeにadCmdStoredProcを値で入れるようにしています。サーバはWindows2003Server,DBはSQLServer2005です。よろしくお願いします。 Option Explicit On Error Resume Next Dim blnRetCode ' 戻り値 Dim objAdoCon ' ADO 接続 Dim objComm ' コマンドオブジェクト 'Dim return_value 'DBバックアップの成功、失敗の戻り値 ' ADO 定数の読み込み Set objAdoCon = WScript.CreateObject("ADODB.Connection") If Err.Number = 0 Then 'ADODBを使用してDBにアクセスする objAdoCon.ConnectionString = "Provider=SQLOLEDB.1;Password=aaaa;User ID=user2;Catalog=dbname;Data Source=192.168.8.2" objAdoCon.Open Set objComm = CreateObject("ADODB.Command") objComm.ActiveConnection = objAdoCon objComm.CommandType = 4 objComm.CommandText = "ExportData" objComm.Execute If (Err.Number <> 0) Then MsgBox Err.Number End If objAdoCon.Close End If Set objComm = Nothing Set objAdoCon = Nothing

  • ストアドプロシージャの実行方法

    test()というストアドプロシージャを作成しました。 ユーザーマニュアルに従いcall testとコマンドを打つと以下エラー ERROR 1146 (42S02): Table 'xxxxx.test' doesn't exist マニュアルにcall sp_nameとあるので call sp_testとしてみるとエラーメッセージが以下に変わったので ERROR 1305 (42000): PROCEDURE xxxxx.sp_test does not exist ストアドプロシージャ名sp_testに変更してみたのですが、結局 ERROR 1146 (42S02): Table 'xxxxx.sp_test' doesn't exist というエラーしか出ません・・・。mysqlのバグなのでしょうか? バージョン 5.0です

  • ストアドプロシージャについて

    Access2003とSQL Server2005Expressです。 初歩的な質問で恐縮です。 以下のストアドプロシージャのデータ取得先を、テーブルではなく 別のストアドプロシージャにしたいのですが、 その方法がわかりません。 CREATE PROCEDURE テスト AS SELECT コード, 社名, 住所, 電話 FROM 名簿     ↑     これをテーブルではなく、別のストアドプロシージャを     指定したのですが・・・。     ここをストアドプロシージャ名にするとエラーになります。     どうすればよろしいでしょうか?

  • phpMyAdminからストアドプロシージャを

    phpMyAdminからストアドプロシージャを作成したいのですが、エラーが表示され作成できません。 DELIMITER // CREATE PROCEDURE proc1(INT pa char(10)) BEGIN update sum_table set blank = pa; END; // DELIMITER ; これを実行したところ以下のエラーが出ました。 #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INT pa char(10)) BEGIN update sum_table set blank = pa; END' at line 1 -------------------------------------------------------------------------------- そこでソースから「DELIMITER」を消してもう一度実行してみました。 CREATE PROCEDURE proc1(INT pa char(10)) BEGIN update sum_table set blank = pa; END; すると今度は以下のエラーが表示されました。 #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INT pa char(10)) BEGIN update sum_table set blank = pa' at line 1 どこが間違っているかわからず困っております。 初歩的な質問で凝縮ですが、どなたかご教示いただけますでしょうか?

  • ストアドプロシージャの処理終了を判定

    OS:windowsXP Pro Access Version:ACCESS2000 AccessVBAでストアドプロシージャを呼び出し処理をしていますが、ストアドプロシージャでの処理終了を判定して、次のステップに移るような処理を考えています。 SQLServerには、ODBC経由で接続しています。 ストアドプロシージャの呼び出しは巧く行くのですが、処理終了が判定できません。 具体的にはどうすればストアドプロシージャの処理の終了を判定することができるのでしょうか?      Dim adoCN As ADODB.Connection Dim str_adoCN As String Dim strCommand As ADODB.Command Dim RS As New ADODB.Recordset str_adoCN = "Data Source='SQL_XXXX'; User ID='XX';Password='XXXXXXXX';" Set adoCN = New ADODB.Connection adoCN.Open str_adoCN Set strCommand = New ADODB.Command Set strCommand.ActiveConnection = adoCN strCommand.CommandText = "Procedure_XXXX" strCommand.CommandType = adCmdStoredProc Set RS = strCommand.Execute() 次の処理....

  • ASPからMySQLへの接続

    http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/mysql_03.htm等を参考につくってみたのですが、 Microsoft OLE DB Provider for ODBC Drivers エラー '80004005' [Microsoft][ODBC Driver Manager] データ ソース名および指定された既定のドライバが見つかりません。 や Microsoft OLE DB Provider for SQL Server エラー '80040e4d' 接続文字列の属性が正しくありません。 のエラーが出てしまいます。 PC環境はWindows2003server、mysql5.0.18です。

  • PostgreSQLでストアドプロシージャについて

    皆さんのお陰でストアドファンクションを作成する事ができました。 ここで1つ、疑問が・・・ ネットでPostgreSQLの「CREATE PROCEDURE」を検索しても私が望んでいる情報を得る事ができませんでした。 申し訳ありませんがここで質問があります。 PostgreSQLで「CREATE PROCEDURE」はないんでしょうか。 PostgreSQLではストアドプロシージャとストアドファンクションは一緒なのでしょうか。 MySQLやSQL Serverではストアドプロシージャとストアドファンクションは別だった気がしますが・・・ ※違っていたらすみません。 どなたか私の疑問を解決していただけませんでしょうか。 宜しくお願いします。