問題タブ [parameterized-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.
c# - パラメータ化されたクエリのSQL出力の検索
SQL Server 2005インスタンスに対してC#を使用してパラメーター化されたクエリを作成しています。デバッグの目的で、データベースに対して実行されるSQLを確認したいと思います。データベースログまたはVisualStudioデバッガーのいずれかで、パラメーター化されたコマンドの出力SQLが何であるかを確認できる場所はありますか?
sql - ADO.NETのSQLパラメータ値として「DEFAULT」をどのように指定しますか?
コードで動的に作成されるSQL2005を対象としたパラメーター化されたSQLクエリがあるため、ADO.NETSqlParameter
クラスを使用してSQLパラメーターをに追加しましたSqlCommand
。
前述のSQLでは、デフォルトのあるテーブル値関数から選択します。動的SQLでこれらのデフォルトパラメータの値を指定する場合もDEFAULT
あれば、テーブル値関数で定義されているSQLを使用するように指定する場合もあります。
コードをクリーンに保つために、SQLキーワードを動的に追加して、デフォルト以外を使用するときにパラメーター化するのではなく、の値としてDEFAULT
設定したかっただけです。DEFAULT
SQLParameter
できますか?そのような場合のベストプラクティスは何ですか?
c# - HTMLタグ内からテキストボックスの値を取得する方法
TextBox1 値を使用して、SqlDataSource タグから gridview にデータを選択したいと考えています。その ASP.net コード ビハインド ファイルを変更するにはどうすればよいですか。
java - Javaでパラメータ化されたOracleSQLクエリ?
次のコードがResultSetにデータを生成しない理由を理解しようとしています。
一方、以下は正しく実行されます。
SCHOOLのデータ型はCHAR(9バイト)です。setStringの代わりに、次のことも試しました。
私は次に何を調査するかについて完全に立ち往生しています。Eclipseデバッガーは、setStringまたはsetCharacterStreamの後でもSQLクエリは変更されないと言います。パラメータの設定が機能していないことが原因なのか、それともデバッガがPreparedStatementの変更を取得できないだけなのかはわかりません。
どんな助けでも大歓迎です、ありがとう!
sql-server - 一緒に使用されるプリペアド ステートメントとストアド プロシージャ
私は Microsoft ASP.NET / SQL Server 2008 ベースの Web アプリケーションの計画段階にあり、データベースの設計について考える際に、インジェクション攻撃と、インジェクション攻撃のベクトルとしてのデータベースを軽減するために採用すべき戦略について考え始めました。 .
さまざまなソースから、ストアド プロシージャを使用すると安全性が向上すると聞いています。また、動的 SQL で使用されている場合、注入ポイントが存在するため、同じように感染性があることも読みました。
質問
ストアド プロシージャ内でパラメータ化されたクエリを使用することは可能ですか? 私の考えでは、ストアド プロシージャへの引数をプリペアド ステートメントに渡すと、データベース エンジンがそれらの引数をサニタイズしてくれます。
php - PDO パラメータ化クエリの仕組み
質問をよくお読みください。「私のコードが動かない!!!」というのは、いつもの愚かなことではありません。質問。
意図したエラーでこのコードを実行すると
このエラーメッセージが表示されます
SQL 構文にエラーがあります... 1 行目の 'INN('I\'m','d\'Artagnan')' 付近
しかし、私は何年もの間、クエリとデータがサーバーに別々に送信され、決して干渉しないと考えていました。したがって、いくつか質問があります(ただし、誰も答えられなかったと思います...)
- 引用符で囲まれた、エスケープされた、おなじみの文字列表現はどこから得られるのでしょうか。エラーを報告するために特別に作成されたものですか、それとも実際のクエリの一部ですか?
- 実際にはどのように機能しますか?プレースホルダーをデータに置き換えますか?
- デバッグ目的で、クエリの一部だけでなく、クエリ全体を取得する方法はありますか?
アップデート
mysqli
期待どおりに実行します:エラーがスローされますnear 'INN(?,?)'
php - MySQLクエリを最適化するために必要な提案
PHPでパラメーター化されたクエリを使用しています。次の2つのクエリがあります。
と
つまり、質問は「投稿」テーブルで議論されており、question_idによって参照されています。
これらの2つのクエリから必要な結果を取得するために、データベースを1回クエリするのに十分なmysqlがわからないため、PHPコードに冗長なコードがいくつかあります。
私がそれをうまくやっていて、私のPHPコードの冗長な部分を処理する方法はありますか、それともこれを達成するためのより良い方法がありますか?
sql - SQLパラメータ化とエスケープ
選択した言語/データベースにユーザー入力をエスケープする組み込み関数(たとえば、mysql_real_escape_string)がある場合、SQLパラメーター化の引数は何ですか?mysql_real_escape_stringは、ある時点で、アプリケーションを脆弱なままにする可能性がありますか?
パラメータ化を使用するのは、それがより良い方法であると言われた/読んだことがあるからですが、盲目的にフォローしたいだけではありません。何か洞察はありますか?ありがとう!
asp.net - パラメータ化されたクエリの基本
- パラメーター化されたクエリを何度も使用しましたが、SQL インジェクションの防止に役立つことがわかっています。しかし、SQLインジェクションを防ぐためにパラメーター化されたクエリ内で機能する基本的なロジックが何であるかを知ることができるかどうか疑問に思っていましたが、それは非常に単純かもしれませんが、私はそれについて知りません. 私はその基本的なものをGoogleで検索しようとしましたが、Asp.netでパラメータ化されたクエリを使用する方法の例を見つけるたびに.
- SQL インジェクションで使用される (',-- など) のような特殊文字を停止する特別なクラスを作成することについては知っていますが、特殊文字だけを停止することで SQL インジェクションを完全に防ぐことができますか?
- 最後に、.net パラメーター化クエリは SQL インジェクションを完全に阻止できるのでしょうか?
php - パラメータ化されたクエリ
パラメーター化されたクエリを使用する利点があるため、現在パラメーター化されたクエリを学習しています。
このコード ブロックをパラメータ化されたバージョンに変換することによって、誰かがいくつかのポインタを与えることができますか?
ありがとう。