2

UniData クエリの入力をサニタイズする機能を提供できる人はいますか? または、削除するもののリストを提供しますか?

4

3 に答える 3

3

CONVERTを使用して1つの不正な文字を一度に削除し、次にSWAPを使用して不正な複数文字の文字列を削除します。

他の答えに基づいて、あなたはこれを得る:

CONVERT ( '"' : "'/[\]^" ) TO "" IN USER.DATA
SWAP "..." WITH "" IN USER.DATA
于 2009-12-04T19:24:11.773 に答える
2

Here's a list of characters reserved by UniQuery:

 " double quote
 ' apostrophe (single quote)
 / forward slash
 [ left square bracket
 \ back slash
 ] right square bracket
 ^ caret

You can write a quick function that takes a string, does a SWAP for each of these characters--you can swap with the ISO 8859-1 decimal code (e.g., ] for ])--and returns the sanatized string.

于 2009-10-30T20:30:45.463 に答える
2

Rob Sobers の回答に加えて、トリプル 's/ も探してください。.これらは、[ および ] とほぼ同じように、実行しているモードに応じてワイルドカードとして使用できます。

コメントの編集:

これをテストするためのインスタンスを目の前に持っていませんが、VOC ファイルの「UOLOGIN」段落で ECLTYPE を明示的に「P」に設定することで変更できると思います。

UOLOGIN は LOGIN に似ています。セッションが最初に作成されたときに呼び出されます。違いは、UOLOGIN が UniObjects セッションに対して呼び出されることです。

于 2009-11-14T02:00:32.530 に答える