1

Informix データベースでデコード機能を使用しています。整数データ型のフィールドを取得しています。取得した値が である場合は''、null として設定する必要があります。そうでない場合は、同じ値を設定しています。

私はこのように試しました:

decode(table1.field1,'',NULL,table1.field1)

しかし、私は次のエラーが発生しています

対応する型は、CASE 式で互換性がある必要があります。

値がデータベースからどのように取得されるのか混乱しています — null または 0 または -1 または何かとして。私はこのようにする必要がありますか?

decode(table1.field1,'',0,table1.field1)

それを解決する方法

4

1 に答える 1

3

ここにはいくつかの混乱があります。は INTEGER 列であるためtable1.field1、空の文字列が含まれることはありません。NULL または有効な INTEGER 値のいずれかが含まれます。したがって、更新はまったく必要ありません。

なぜあなたが得るかもしれないと思います''か? プログラミング言語が型を区別する場合は、文字列変数に INTEGER 列を選択する必要があります。それ以外の場合は、空の文字列がプログラミング言語で null を表す方法である可能性があります。

于 2012-10-12T17:47:56.163 に答える