在DB2中为不同的数据类型插入Blank值

时间:2015-11-18 17:58:15

标签: sql db2 default

我在DB2中有一个包含超过150列不同数据类型的表,包括CHARACTER,DECIMAL,DATE,TIMESTAMP和VARCHAR。

我正在为一条记录创建一个插入脚本,我需要使用默认值填充第一列,所有剩余列都应为空,而不管数据类型如何。

例如

INSERT INTO TABLE1 (COL1, COL2, COL3, COL4 ... COL150)
VALUES ('hello','','','','' ... '')

COL1是CHARACTER,COL2可以是TIMESTAMP,COL3可以是VARCHAR,COL4可以是VARCHAR。我可以对所有数据类型使用''吗?

2 个答案:

答案 0 :(得分:0)

  

我可以使用''对于所有数据类型?

你不必。要插入列的默认值,请使用关键字default

insert into table1 (col1, col2, col3, col4) 
values ('hello', default, default, default);

无论列的数据类型如何,这都有效。

请注意,这不能用于定义为NOT NULL且没有非null默认值的列。

答案 1 :(得分:-2)

不确定我是否理解你的问题,但让我给出一个比我在评论中所做的更好的解释。

每次我必须在我的数据库中插入一些内容时,我使用,我的老板强迫我lol来创建函数。在我的tables col中,大多数NULL允许function insertMajor($application_id, $major,$type, $conn){ //insert $query = "INSERT INTO [dbo].[Applicant_Majors] " . "([application_id]," . "[program]," . "[type])" . "VALUES('$application_id','$major','$type')"; //connection $stmt = sqlsrv_query($conn, $query); if ($stmt === false) {//start if die(print_r(sqlsrv_errors(), true)); }//end if } 值。所以,这是一个例子(顺便说一句,并不完美):

Applicant_Majors

我的name, date_of_declaration表包含更多列,例如null等,但列可以是SQLserver 2008,或者用户可以将该问题留空。

不确定这是否是您要做的。

PS:我使用like()我的代码可能与您的代码不同