問題タブ [mysql-parameter]

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 投票する
3 に答える
1239 参照

c# - MySqlParameter を使用して条件付きで列をデフォルト値に設定するにはどうすればよいですか?

ユーザー アカウントを格納する MySql データベースにテーブルがあります。列の 1 つである expires には有効期限が格納されますが、デフォルトは NULL です。有効期限を削除してデフォルト値に戻す必要があります。

現在、私の CRUD ルーチンはすべて、MySqlCommand とパラメーターを使用して記述されています。これは MySqlParameter で直接行うことができますか? それとも、この不測の事態を処理するために別のコマンド オブジェクトを作成する必要がありますか?

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

c# - C# MySqlParameter の問題

(int) faultsGroup は 0 または 1 ですが、常に次のエラーが発生します: 列 'FaultGroup' を null にすることはできません

誰かが理由を教えてくれますか?構文は問題ないようです。

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

c# - mySQL :C# で使用する構文

私はC#MYsqlで使用しています.MySql Workbenchで実行すると機能するクエリがありますが、C#では値を返さず、antエラーも発生しません.テーブル名databaseNameの前に使用するMysqlでの使用は1つだけです.tableName ですが、C# では必要ないと思います。これは、何も返さないクエリの一部です。

編集:解決済み

ここでは、ユーザーがボタンをクリックしたときに実行されるすべてのコードを示します。

0 投票する
8 に答える
13217 参照

c# - C#およびMySQL .NETコネクタ-ジェネリッククラスでのSQLインジェクション攻撃を防ぐ方法はありますか?

私のアイデアは、MySQL .NET Connector 6.2.2を介してMySQLデータベースと通信するC#(3.5)Winformsアプリを介してInsert / Update/Selectの汎用クラスを作成することです。

例えば:

次に、プログラムのどこからでも、SQLクエリ文字列を渡すだけで、ユーザー入力の有無にかかわらずクエリを実行できます。

SOを読み回すと、これがSQLインジェクション攻撃につながる可能性があることがわかり始めています(ユーザー入力値の場合)。入力されたstrSQLをスクラブする方法はありますか、それともデータベース関数を実行する必要があるすべてのメソッドで個別のパラメーター化されたクエリを作成する必要がありますか?

UPDATE1:

私の最終的な解決策は次のようになります。

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

c# - 同じクエリでパラメータを複数回使用できますか?

私は疑問に思っていました、次のように、同じクエリでパラメータを複数回使用できますか?

これは可能ですか、それとも2つのパラメーターを書く必要がありますか?

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

mysql - SqlParameterCollection は、MySqlParameter オブジェクトではなく、null 以外の SqlParameter タイプ オブジェクトのみを受け入れます

MySqlサーバーの「ExceptionLog」のテーブルにスローされた例外を挿入するメソッドを作成しました。

ExceptionLog テーブル形式

idExceptionLog int (AI) ユーザー (varchar 45) ErrorMessage (varchart 4000)

問題は、次のエラーが発生し続けることです。誰かが理由を知っていますか?

SqlParameterCollection は、MySqlParameter オブジェクトではなく、null 以外の SqlParameter タイプ オブジェクトのみを受け入れます。

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

.net - Add()とAddWithValue()を使用したMySqlパラメーターの追加の違い

このドキュメントのMySqlによるとC.7.9.6。MySQL Connector / NET 5.0.5での変更(2007年3月7日)

メソッドを追加し、廃止としてMySqlParameterCollection.AddWithValueマークしました。Add(name, value)

私は.Add最近まで使っていて、問題はありませんでした。メソッドを発見する.AddWithValueと、主に構文が少なくて済むため、この方法が適しています。

私の質問:2つの方法の間に機能的な違いがあるかどうか誰かが知っていますか?それらに関する適切なドキュメントが見つかりません。

編集:

Microsoftは、SqlParameterCollectionについて次のように述べています。

AddWithValueSqlParameterCollection.Add文字列とオブジェクトを受け取るメソッドを置き換え ます。そのオーバーロードはAdd文字列を取り、オブジェクトは、文字 SqlParameterCollection.Add列とSqlDbType列挙値を受け取るオーバーロードとのあいまいさの可能性があるため、非推奨になりました。この場合、整数を文字列とともに渡すと、パラメーター値または対応するSqlDbType値のいずれかとして解釈できます。AddWithValue 名前と値を指定してパラメータを追加する場合はいつでも使用できます。

おそらくそれは同じ理由によるものです。

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

mysql - コマンドで追加するMysqlcommandでMySQLパラメータ配列を使用する方法

mysqlcommand と mysqlparameter 配列があります []

次に、この配列のコマンド パラメータを設定します。どうすればそれができますか?エラーが発生しました:

MySql.Data.MySqlClient.MySqlException:

MySqlParameter オブジェクトのみを格納できます

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

c# - パラメータ化されたMySqlINSERTクエリに正しいパラメータ値がありません

パラメータ化されたクエリを使用して、基本的な挿入ステートメントを実行しようとしています。私の問題は、使用している構文が何であれ、適切な値ではなくすべてのパラメーターをnullに設定してクエリが実行されているように見えることです(コマンドテキストに値をハードコーディングしない限り)。

コードは次のとおりです。

3つの異なる構文により、nullパラメーターの値になります。

ps:command.Parameters.AddWithValue()メソッドを使用している人をたくさん見ましたが、持っていないようです。

よろしく、ベン

0 投票する
9 に答える
18404 参照

c# - リストを追加mysqlパラメータに

.NETコネクタのMySqlParameterについてこの質問があります。

私はこのクエリを持っています:

そして、MySqlParameterは次のとおりです。

これは可能ですか?intの配列を単一のMySqlParameterに渡すことは可能ですか?もう1つの解決策は、intの配列を「1,2,3,4」などの文字列に変換することですが、これをMySqlParameterに渡して文字列として認識されると、次のようなSQLクエリが実行されます。 "1 \、2 \、3 \、4"であり、これは期待値を返しません。

@更新:mysqlコネクタチームはもう少し頑張る必要があるようです。