問題タブ [parameterized]
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.
sql-injection - パラメータ化された SQL 列?
インジェクションを防ぐためにパラメーター化されたクエリを利用するコードがいくつかありますが、テーブルの構造に関係なくクエリを動的に構築できる必要もあります。これを行う適切な方法は何ですか?
以下に例を示します。名前、住所、電話の列を持つテーブルがあるとします。Show Columnsを実行し、選択ドロップダウンにオプションとして入力するWeb ページがあります。
次に、 Searchというテキストボックスがあります。このテキストボックスはパラメータとして使用されます。
現在、私のコードは次のようになっています。
私はそれから不快感を覚えます。パラメータ化されたクエリを使用している理由は、エスケープの使用を避けるためです。また、エスケープは、列名をエスケープするように設計されていない可能性があります。
これが意図したとおりに機能することを確認するにはどうすればよいですか?
編集: 動的クエリが必要な理由は、スキーマがユーザー設定可能であり、ハードコーディングされたものを修正するつもりはないからです。
parameterized - パラメータ化されたjsp:ストライプアクションのインクルード?
私はこれを解決しようとしていて、行き詰まっていたので、質問したいと思いました。
A と B の 2 つの ActionBean を想像してください。
A.jsp
このセクションがあります:
B ActionBean は、「ponies」パラメーターがオンまたはオフに設定されているかどうかに応じて、非常に興味深い処理を行うことを読んでください。
パラメータ文字列「ponies=on」は、リクエストをデバッグすると表示されますが、B ActionBean にバインドされているものではありません。代わりに、元の A.action へのパラメーターがバインドされます。
私が望む動作を得る方法はありますか、それとも基本的なものを見逃していますか?
configuration - パラメーターが Web インターフェイスによって公開されるように、CruiseControl.NET プロジェクト構成をパラメーター化できますか?
現在、NAnt と CruiseControl.NET を使用して、ソフトウェア開発のさまざまな側面を管理しようとしています。現在、NAnt は、コマンド ラインで指定した入力ターゲットに基づいて、環境固有の設定(データベース接続文字列など)を置き換えることを含め、ほぼすべてを処理します。
CruiseControl.NET は、新しいコードがコミットされるたびに、既定の環境(dev)用のアプリケーションをビルドするために使用されます。また、CruiseControl.NET で追加環境のテストとステージのビルドを呼び出したいのですが、テストとステージの展開がはるかに少ない頻度で行われるため、開発ビルドが (毎日) 呼び出されるたびに、これらが自動的に呼び出されることは望ましくありません。テストおよびステージ展開は、アプリケーションの QA の準備が整ったときにのみ行われます。
環境ごとに 1 つずつ、複数のプロジェクトを指定することで、これを簡単に行うことができます。ただし、アプリケーション内のマイルストーンごとに 1 つずつ、すでに多くのプロジェクトが構成されています。マイルストーンごとに 3 つのプロジェクトをセットアップする必要がある場合、CruiseControl.NET 構成はすぐに手に負えなくなります。
これが私の質問です: パラメータが Web インターフェイスによって公開されるように、CruiseControl.NET プロジェクト構成をパラメータ化できますか?
できれば (私が思うに)、各環境 (開発、テスト、ステージなど) のチェックボックスを Web インターフェイスに公開することができます。ビルドが強制的か自動かに関係なく、チェックされる環境ごとにビルドが作成されます。チェック済みの状態をデフォルトにできればさらに良いでしょう。
.net - LIKE および IN 条件を使用したパラメーター化されたクエリ
.Net のパラメーター化されたクエリは、例では常に次のようになります。
しかし、私は次のことをしようとしてレンガの壁にぶつかっています:
どこ
- CategoryIDs は、数字 "123,456,789" (引用符なし) のカンマ区切りのリストです。
- 名前は文字列です。単一引用符やその他の不適切な文字が含まれている可能性があります
これの正しい構文は何ですか?
c# - パラメータ化されたクエリ (C#、Oracle): より読みやすい表現を生成するには?
C# コードでパラメーター化されたクエリを使用して、Oracle データベースとやり取りしています。より読みやすい形式でステートメントをログに記録するにはどうすればよいですか?
次のようなパラメーター化されたクエリがあるとします。
理想的には、後で使用するためにステートメントをコピーして貼り付けることができるように、すべてのパラメーターが置き換えられたログ エントリを確認したいと考えています。
私の現在のアプローチは、パラメーター化されたクエリの文字列を出力してから、すべてのパラメーターを反復処理して ToString() を使用することです。多くのパラメータがある場合、これは少し読みにくいです。次のような結果が得られます。
私が計画している別のアプローチは、string.Replace() 関数を使用してパラメーターのプレースホルダーを置き換えることです。しかし、おそらくこれを行うためのより良い方法はありますか?
前もって感謝します。
編集1:
コード例を提供する方が良いと思いました。
この形式でパラメーター化されたクエリを使用しています (注: log4net を使用しています):
Oracle コマンド オブジェクトが使用しているステートメントをログアウトする方法を探しています。私の現在のアプローチ(質問を参照)は、あまり読みにくいため、まだ満足のいくものではありません。
パラメータ化されたクエリを解析するのに役立つ API (おそらく OracleClient 名前空間にあるもの) があることを願っていました。もっと洗練された文字列置換や正規表現を行うこともできましたが、知識を集めたかったのです。私はすでにそれについていくつかの研究を行ってきましたが、何も見つかりませんでした。
crystal-reports - Crystal Reports Server でのパラメータ化されたレポートのスケジュール
Crystal Reports Server 2008 で毎月実行するレポートを設定しようとしています。これにより、翌月の Affordable Care Plan の終了日がわかります。ただし、私が知る限り、「レポートがスケジュールされてから 7 日後」ではなく、特定の日付文字列しか指定できません。どうすればいいですか?(実際にはCR2008についても同じ質問ですが、サーバーは私が今興味を持っているものです。)
ありがとう!
java - パラメーター化されたテストの名前の変更
JUnit4 でパラメータ化されたテストを使用するときに、独自のカスタム テスト ケース名を設定する方法はありますか?
[Test class].runTest[n]
デフォルト — — を意味のあるものに変更したいと思います。
java - 拡張コレクションをパラメータ化する方法
私は ArrayList クラスを拡張しようとしましたが、あまり成功しませんでした。それを拡張して、パラメータ化できるようにしたい。
したがって、通常、次のようなものがあります
私が欲しい
単に ArrayList を拡張するだけでは機能しません。
使用しようとすると、エラーが発生します
MyList 型はジェネリックではありません。引数 <SomeObject> でパラメーター化することはできません
のバリエーションを試しました
クラス名の背後にあるサブオブジェクトを使用すると、動作しているように見えますが、何らかの理由でサブオブジェクト クラスのメソッドが隠されています。
これを正しく機能させる方法についての考えや提案は大歓迎です。
asp.net - パラメータ化された SQL クエリ エラー
動的にパラメーター化された SQL クエリを作成するアプリケーションがあります。次のクエリは、「"="... の近くで構文エラー」という内部例外を返します。
パラメータを列名に割り当てる方法だと思いますが、よくわかりません。コードは次のとおりです。
編集:みんなに感謝します。これらの回答はすべて役に立ちました。=)
php - MSSQLデータベースを使用するときにPHP4でパラメーター化されたクエリを実行する方法はありますか?
PHP 4を実行し、FreeTDSを介してMSSQL2000データベースと通信する古いシステムでメンテナンス作業を行っています。私は知っています、それはすでにいくらか怖いように聞こえます!
多くのコードは、SQLクエリを生成するために安全でない文字列連結を使用していました。私は物事をより安全にするために入力をフィルタリングするためにいくつかの作業を行いましたが、それは私に頭痛の種を与えています。
現在の設定で適切なパラメータ化されたクエリを実行できるものがあるかどうか疑問に思っていますか?この時点で、PHPまたはMSSQLのバージョンを変更することはできません。