SQL のサニタイズ変換関数
SQL のサニタイズ変換関数を使用して特殊文字をエスケープし、SQL ステートメントに使用される文字列データピルへの挿入を阻止します。
SQL のサニタイズ変換関数には、文字列入力データピルが必要です。SQL のサニタイズ変換関数を適用するときは、正しい入力データピルタイプを使用してください。SQL のサニタイズ変換関数が不適切なデータタイプに適用されると、データはランタイム時に変換されず、代わりに入力値が返されます。フローランタイム値を確認する方法の詳細については、「フローをテストする」を参照してください。
注:
データピルが JDBC ステップに対する SQL ステートメント入力にドロップされると、SQL のサニタイズ変換関数カテゴリが自動的に表示されます。
SQL 識別子のサニタイズ
SQL 識別子 (テーブル、ビュー、列名など) のエスケープされた特殊文字/挿入された値を含む文字列を返します。入力文字列をデータベース固有の引用符で囲みます。
| 入力データピル | パラメーター | 出力データピル |
|---|---|---|
| 文字列 | Database:文字がエスケープされるデータベース固有のコンテキスト。選択肢には、MySQL、Oracle、PostgreSQL、および Microsoft SQL Server があります。 | 文字列:選択したデータベースに基づいて適切にエスケープされた SQL 識別子を含む文字列 |
- 入力:
simple_column - データベース:
MySQL - 出力:
`simple_column`
注:
- 入力文字列にピリオド文字が含まれている場合、SQL 識別子のサニタイズはエラーを返します。ピリオドを使用して SQL 識別子を結合するには、ピリオドで連結された 2 つのデータピルを使用し、SQL 識別子のサニタイズを両方のピルに適用します。
- 入力データピルを引用符で囲まないでください。入力値は、データベースタイプに適用される引用符またはバッククォートのタイプで自動的に囲まれます。
SQL 値のサニタイズ
SQL 値のエスケープされた特殊文字または挿入された値を含む文字列を返します。入力文字列をデータベース固有の引用符で囲みます。
| 入力データピル | パラメーター | 出力データピル |
|---|---|---|
| 文字列 | Database:文字がエスケープされるデータベース固有のコンテキスト。選択肢には、MySQL、Oracle、PostgreSQL、および Microsoft SQL Server があります。 | 文字列:選択したデータベースに基づいて適切にエスケープされた SQL 値を含む文字列 |
- 入力:'1'='1
- データベース:SQLServer
- 出力:''1''=''1'
注:
入力データピルを引用符で囲まないでください。入力値は、データベースタイプに適用される引用符またはバッククォートのタイプで自動的に囲まれます。