問題タブ [sql-parametrized-query]

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

c# - パラメータ化されたクエリまたはエンティティ フレームワークを使用すると、SQL インジェクションが防止されるのはなぜですか?

SQL インジェクションについてよく理解できました。それは、次のようなものになるはずのSQLクエリの場合です

次のようなクエリになります

ユーザーが悪意のある値をアプリ、Web サイト、クライアントなどに挿入すると、攻撃者は DB を削除するだけでなく、テーブルの名前を見つけてそこから情報を取得しようとする可能性があることも認識しています。

これを防ぐのに役立ついくつかのことも知っています:

  1. パラメータを取るストアド プロシージャの使用 (SQL Server)
  2. パラメータ化された SQL クエリの使用
  3. Entity Framework / LINQ to Entities の使用 (C#、おそらく F#?)

これらは、SQL インジェクションの発生を実際にどのように防いでいるのでしょうか? 攻撃者は、すでに使用している入力に同じ悪意のある値を渡して、同じ結果を得ることができないのはなぜですか。

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

php - パラメータ化されたクエリの不明な合計パラメータ

パラメータ化されたクエリhttps://github.com/colshrapnel/safemysqlに safemysql クラスを使用しています。通常、クエリを準備するときは、次のようになります。

解析されるパラメータの総数が事前にわかっているこの種のクエリはかなり単純ですが、使用するパラメータの数がわからないクエリでスタックしているようです。検索フォーム:

私がやりたいことは、次のクエリをパラメータ化することです:

助言がありますか?

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

sql - MS-Access のパラメーター化されたクエリでワイルドカードを使用して LIKE 演算子を使用する方法

私はMS Accessデータベースを使用しています。ここでは、パラメーター化されたクエリを渡す必要があります。実際、MS Access はこの形式で like を使用しています ... LIKE ' [par1] ' {par1 は ms-access-query のパラメーターです} したがって、ワイルドカードをサポートするパラメーター化された like クエリを使用する方法が必要です。たとえば、ユーザーが par1 に 325 を入力した場合、条件の sql-command テキストは ... WHERE field1 Like "*325*" です

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

c# - 挿入実行時のORA-01006

以下は、 ExecuteNonQuerySQL エラーを返します: ORA-01006: bind variable does not exist. クエリで定義されているすべてのバインド パラメータを確認しましたが、何が問題なのですか?

影響を受けるテーブル:

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

sqlparameter - パラメータをストアド プロシージャに渡す

このストアド プロシージャにパラメータを渡したい:

ここに.netコードがあります

次のエラーが表示されます: ParameterName '@ProjectNumber' の SqlParameter はこれに含まれていません

0 投票する
3 に答える
102 参照

sql - t-sql でクエリをパラメーター化する

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

「@columnCount」付近の構文が正しくありません。

何が間違っている可能性がありますか?

私がに変更した場合

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

テーブル変数「@tableName」を宣言する必要があります。

C#から実行します

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

oracle - MVC の raw クエリのようなものと、同じパラメーター名によるパラメーター化

Oracle.Data.Client で EF 5.0 を使用します。行のパラメーター化されたクエリを実行しようとしています。

生のクエリを使用して、mvc で同じパラメーター名を持つ複数のパラメーターをバインドするにはどうすればよいですか?

エンティティ -> MVC モデル DB インスタンス。

例えば

それは私が受け取っているかのどちらかです: - すべての変数がバインドされているわけではありません。次に、別のパラメーター名を試しましたが、 NVL(column_1, :p0) = :p1 を助けませんでした

前もって感謝します!

0 投票する
4 に答える
6367 参照

c# - Entity Framework SQL クエリが SQL パラメータで機能しない

SqlParameters で使用しようとしている生の SQL クエリがあります。(文字列連結を使用して)安全でないクエリを作成すると、問題なく動作します...結果が得られます。この場合、10 を取得します。

SQL パラメータを使用しようとすると、レコードがゼロになります。@ の有無にかかわらずパラメーターを作成しようとしました。それらを への呼び出しで個別に追加しようとしましたQuery。また、Sql パラメーターの代わりにオブジェクト パラメーターを試しました。私は1つだけを使用してみました....そして、何をしても、SQLパラメーターを使用して結果を取得できないようです。文字列連結のみです。

エンティティ フレームワークの SQL クエリは SQL パラメータでどのように機能しますか? また、使用しているクエリが機能しないのはなぜですか?

コード例: