插入SQL和NOT NULL值

时间:2016-03-02 19:05:46

标签: sql insertion

我已经创建了一个表模式,并指定对于某些属性,值不能为null。对于此表的一列,值将从另一个表的列导入,但我面临的问题是,当我使用insert语句将另一个表的该列的值复制到此新创建的表的列时,这个新列的属性开始尖叫,因为它们对它们有一种约束,即插入它们的值时不能为NULL! 我该如何处理这个?

一个解决方案是,对于其他属性,仅仅是暂时的,我可以声明可以容纳空值,以便我可以成功地从其他表的列导入值,然后稍后将条件放在值为的其余属性上不是NULL。但是我该怎么做呢?

2 个答案:

答案 0 :(得分:0)

导入时,您需要将NULL转换为某些DEFAULT值。

我不确定您使用的是哪个数据库引擎,在mysql中: 使用类似IFNULL(column_name, "")的内容。

Reference

答案 1 :(得分:-1)

您可能只是在寻找default条款。定义列时,可以指定;

intcol int not null default 0

如果没有为插入指定列,则默认为0.在某些数据库中,如果提供了NULL值,它也将获得默认值。

相关问题