2012-07-18 59 views
1

目前,我有一個DB2數據庫和char類型的一些列。 如果我將一些數據插入到這些字符少於指定字符的列中,DB2會用空白字符填充其餘字符。我們如何防止DB2在Char類型中填充空字符?

例如: 柱:orderkey型char(8)
如果我插入"AB12",它被保存像"AB12XXXX"(X表示空白chracters)

是IST可以防止DB2通過char類型填補空白字符?

DB2 Version 9.5

回答

6

在SQL中,CHAR數據類型是固定長度的字符串。根據定義,附加字符用空格填充。

你想要的是VARCHAR數據類型。因此,只需更改VARCHAR(8)的數據類型,它將存儲沒有附加空格的字符串。

順便說一下,這在所有數據庫中都是如此,而不僅僅是DB2。

+0

你說得對。但是在Mysql中當檢索到CHAR值時,尾隨空格被刪除。在DB2中並非如此。在我的情況下,大部分數據都有8個字符。具有小於8個字符的值是一個例外。 – Kayser 2012-07-19 08:53:56

+0

在這種情況下,您需要修剪空格。或者,如果中間沒有空格,請用空字符串替換它們。 – 2012-07-19 13:21:57

相關問題