問題タブ [stored-functions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3021 参照

c# - C#でmysqlの準備されたコマンドを使用して、保存されたmysql関数を呼び出して戻り値を取得する

私の最初の投稿は十分に明確ではなかったと思うので、書き直します。

MySql にストアド関数があります。Prearped MySqlCommand を介して、このストアド関数を呼び出したいと思います。ストアド関数を呼び出すことができるmysqlコマンドを作成して準備します。その後、パラメーター値を設定し、このストアド関数を呼び出します。関数はエラーなく動作しますが、戻り値を取得できません。どうすれば戻り値を取得できますか?

これはパフォーマンスの問題ではありません。起動時にすべてのステートメントを準備する実装があります。今、これらの機能をストアド プロシージャと関数に追加したいと思います。


これが私の保存された関数です:

mysql ストアド関数を呼び出すために、最初に mysqlcommand を作成します。

それから私はそれを準備します:

クラスC#を使用して呼び出しますが、関数は機能しますが、戻り値を取得できません:

戻り値を取得できない理由は何ですか? 皆さん、ありがとうございました..

0 投票する
2 に答える
3528 参照

mysql - mysql バイナリデータ型を連結/追加する方法

BINARY(20) 型を返すストアド関数を作成しようとしています。string、itn、float 値を入れて、この戻り値をフォーマットしたいと思います。しかし、バイナリデータを追加する方法がわかりませんでした。

最初の行は test をバイナリとして書き込み、2 行目ではバイナリとして 5 を追加したいと思います。どうやってやるの?皆さん、ありがとうございました..

0 投票する
1 に答える
614 参照

c++ - パラメータのないストアドプロシージャ/関数には、C++用のInformixObjectInterfaceを使用します

簡単です-このlibを使用して、複数の結果を返すストアドプロシージャまたは関数を呼び出す方法はありますか?については知っていますがITRoutingManager、1つの値しか返されないようです。

詳細には、これが私が意味することです:

を返します。と 321で値を取得できます。だからこれは大丈夫です。しかし、以下はそうではありません:ITValueITConversions

私がそうするときroutine.GetRoutine( "function test_out2( int )" )、それはうまくバインドされているので、それで問題ありません。しかし、これを参照してください:

印刷します。整数integer, , , null注意してください。たとえば、行ではなく整数であるのはなぜですか。そして、関数によって返される2つの値を取得する方法は?もう1つの興味深い事実-戻り値は0int (クラスを使用してに変換した場合ITConversions)であり、123でも321でもありません。

方法がなければなりません。これは、Informix開発者によってInformixサーバー用に作成された特別なライブラリであり、これが不可能な場合は奇妙なことになります。

関数についても同じですが、同じだと思います。


注:informixのプロシージャ/関数(Informix:出力パラメータを使用したプロシージャ?)の場合、一般的なケースではoutパラメータなどはありません。

0 投票する
1 に答える
1299 参照

mysql - MySQL IF...THEN の後にクエリステートメントが続く

このようなものはMySQLで有効ですか:

0 投票する
1 に答える
1733 参照

mysql - ストアド関数の MySQL if ステートメント シーケンス

MYSQL で IF ステートメントを使用する際に特有の問題があります。テーブルの内容を文字列として返すストアド関数があります。文字列が正しい数の結果を返すようにするには、数値に基づいて選択ステートメントを準備します。数が <= 9 の場合、1 つの SQL ステートメントと 9 を超える別の SQL ステートメント。

ただし、シーケンスでは、関数の最後に if ステートメントしか配置できません。現在コメントアウトされている正しい場所に配置すると、構文エラーが発生します。関数の最後に if ステートメントを配置しても、エラーは発生しません。

助けてください。これがバグなのか、自分のミスなのかはわかりません。

終わり

0 投票する
2 に答える
1308 参照

php - MySQL のストアド関数 - やる価値はありますか?

最初にデータベースを始めたとき、私は SQL Server を使用していました。私はもともとクラシック ASP でそれに取り組みました。私たちが言われた大きなことの 1 つは、ストアド プロシージャを使用すると、ASP SQL コマンドを操作するよりも SQL トランザクションで多くの時間を節約できるということでした (「インライン」で実行すると思います)。そのため、ストアド プロシージャを作成し、コードからストアド プロシージャを呼び出して、データベースでやりたいことのほとんどすべてを行いました。

とにかく、数年早送りして、今ではすべての作業を PHP と MySQL (および少しの Python) で行っています。ストアド プロシージャや関数を使用している人はほとんど見かけないので、あまり気にしていません。

しかし、私はそれを間違っているだけで、それに気づいていないことに気づきました。MySQL でストアド関数を使用することに大きな利点はありますか? データベースへの多くの呼び出しを処理するかなりのサイズの Web サイトを構築しています。呼び出しはすべて、私の PHP コードとインラインで行われます。一貫して行っている呼び出しにストアド関数を使用し、変数を PHP から関数に渡すだけのほうがよいでしょうか?

0 投票する
1 に答える
4587 参照

database - Postgresql: ストアド関数の dblink

db_A のテーブル tbl_A から db_B の tbl_B に上位 20 行を挿入したいと考えています。
tbl_A と tbl_B のスキーマは次のとおりです。

次のクエリに関連するいくつかの質問があります

  • 次のステートメントをストアド プロシージャに入れることはできますか。
  • 上記の 3 つのステートメントを組み合わせたストアド プロシージャを作成し、そのプロシージャのプリペアド ステートメントを作成することは可能ですか。

誰かがカーソルを使用すること、またはストアドプロシージャ内でdblinkを使用すること、または上記をよりエレガントに実現する他の方法を使用することがどれほど良い方法であるかについてコメントできれば、非常に感謝しています。

0 投票する
1 に答える
50 参照

stored-procedures - コンパイルされたメソッドへの壊れた参照に対処する方法は?

H2 では、Java クラスでコンパイルされたメソッドを参照し、データベースにエイリアスを作成できます。

私の質問は: Java クラスが削除されると、この参照も削除されますか? それとも、この参照はそのままでしょうか?

0 投票する
1 に答える
25374 参照

mysql - ストアド プロシージャを作成しても存在しない

mysql ストアド プロシージャを作成しようとしています。次のコードを使用してプロシージャを正常に作成しました。

私が作成した手順を示します。

しかし、呼び出し myprocedure(2011-05-31);

次のエラーが表示されます

db は、プロシージャを作成したデータベースです

私は何の間違いをしているのですか?

誰でもこれで私を助けることができますか?