1

DB2 にデータがあり、そのデータを SQL に挿入したいと考えています。

私が持っていたDB2データは次のようなものです:

select char('AAA   ') as test from Table_1

しかし、挿入後にSQLで選択すると、データはこのようになります。

select test from Table_1

結果 :

test
------
AAA

なぜ スペース文字がボックス文字に読み込まれるのか。スペース文字が読み込まれるようにこれを修正するにはどうすればよいですか。

または、変更する必要がある設定はありますか? または、パラメーターを使用する必要がありますか?

AS400 と datastage を使用しました。

ありがとうございました。

4

2 に答える 2

1

Datastage は埋め込み文字を追加するので、そこにスペースがあることがわかります。パッド文字はデフォルトで 0x00 (NUL) であり、それが表示されているものです。

APT_STRING_PADCHAR 環境変数を調査します。必要に応じて、他のものに設定できます。

0x00 文字は実際にはデータベースにはありません。簡単に言えば、無視しても問題ありません。

于 2014-06-26T08:02:14.357 に答える
0

あなたが言ったとき:

select char('AAA   ') as test from Table_1

実際には、テーブルのデータは表示されていませんでした。AAA代わりに、定数を文字値としてキャストする式を示し、その結果列に、test偶然にもテーブル内の列の名前のように見える名前を付けていましたが、その偶然はここでは問題になりません。

次に、2 番目のステートメントはデータベース列の内容を表示します。

select test from Table_1

16 進数値が実際に何であるかを調べます。

于 2014-06-27T05:15:15.240 に答える