Re: 半角空白1文字のセット方法
Jiro123
投稿数: 271
データベースはOracleなのですね。
Oracleの場合、CHARやVARCHAR2のカラムでは、空文字('')は、nullとして扱われてしまうため、空文字をセットすることはできません。nullになってしまうのです。
半角空白文字はセットできます。
参考までに、SQLServerでは、CHARやVARCHARでは、空文字と半角空白文字とnullをすべて別物として区別されます。
OracleとSQLServerとで、空文字の扱いに対して、仕様の違いがあるわけです。
『SQL Server』 『Oracle』 『null』『空文字』などのキーワードで検索すると、関連情報がヒットしますよ。
結構知るひとぞ知る、のようですが、そこそこ有名な情報のようです。
uniPaaSでは、データベースから取得したデータの末尾の半角空白文字をTrimして画面に表示されます。
そのため、uniPaaSでは、半角空白文字がセットされているかを確認することができません。
SQLPlusなど、ツールを使うことで、半角空白文字がセットされていることを確認することができます。
また、uniPaaSで文字型項目がブランクになっていても、Nullをセットするようにプログラムが組まれていたり、カラム特性のnullデフォルト値設定されていなければ、半角空白文字がセットされるようになっています。
それで、投稿を読んだ後、
『どのような確認方法をされて、「半角空白文字がセットされていない」と、ご判断されましたか?』
という質問が、私の頭に最初に浮かびました。
Oracleの場合、CHARやVARCHAR2のカラムでは、空文字('')は、nullとして扱われてしまうため、空文字をセットすることはできません。nullになってしまうのです。
半角空白文字はセットできます。
参考までに、SQLServerでは、CHARやVARCHARでは、空文字と半角空白文字とnullをすべて別物として区別されます。
OracleとSQLServerとで、空文字の扱いに対して、仕様の違いがあるわけです。
『SQL Server』 『Oracle』 『null』『空文字』などのキーワードで検索すると、関連情報がヒットしますよ。
結構知るひとぞ知る、のようですが、そこそこ有名な情報のようです。
uniPaaSでは、データベースから取得したデータの末尾の半角空白文字をTrimして画面に表示されます。
そのため、uniPaaSでは、半角空白文字がセットされているかを確認することができません。
SQLPlusなど、ツールを使うことで、半角空白文字がセットされていることを確認することができます。
また、uniPaaSで文字型項目がブランクになっていても、Nullをセットするようにプログラムが組まれていたり、カラム特性のnullデフォルト値設定されていなければ、半角空白文字がセットされるようになっています。
それで、投稿を読んだ後、
『どのような確認方法をされて、「半角空白文字がセットされていない」と、ご判断されましたか?』
という質問が、私の頭に最初に浮かびました。
投票数:0
平均点:0.00
投稿ツリー
-
半角空白1文字のセット方法
(harux2, 2011-4-18 16:24)
- Re: 半角空白1文字のセット方法 (Tanda, 2011-4-18 16:57)
-
Re: 半角空白1文字のセット方法
(harux2, 2011-4-18 17:42)
- Re: 半角空白1文字のセット方法 (Jiro123, 2011-4-19 11:53)
-
Re: 半角空白1文字のセット方法
(harux2, 2011-4-19 18:08)
- Re: 半角空白1文字のセット方法 (Jiro123, 2011-4-20 11:18)
-
Re: 半角空白1文字のセット方法
(harux2, 2011-4-27 11:40)
- Re: 半角空白1文字のセット方法 (Jiro123, 2011-4-27 18:41)
- Re: 半角空白1文字のセット方法 (harux2, 2011-4-28 15:06)