防止在数据库中保存空字符串

时间:2014-03-13 16:46:36

标签: teradata

Oracle具有强大的本机功能,可以通过将空字符串转换为空来阻止将空字符串保存到数据库中。然而,Teradata允许空字符串。我最终必须在我的应用程序中编写帮助程序代码才能将空容转换为DBNull。是否有一个设置(可能在表级别),不是DBA的人可以修改以强制空字符串为空?

1 个答案:

答案 0 :(得分:0)

为什么不对有问题的列的空字符串利用值列表压缩?此外,NULL值也将自动压缩。

ALTER TABLE {MyDB}.{MyTable} ADD {Column1} COMPRESS ('');

CREATE TABLE {MyDB}.{MyTable}, NO FALLBACK
({Column0} {DataType} {NULL|NOT NULL}, -- Can't compress PI Column(s)
 {Column1} VARCHAR(255) COMPRESS (''),
 {Column2} CHAR(4) COMPRESS (''),
 {Column3} INTEGER COMPRESS -- Compress NULL values only
)
PRIMARY INDEX({Column0});