1

我的表将包含以下值。h1,h2,h3是大小为 1 的 varchar 字段

    **Register  Date        Year    Batch   h1      h2      h3**    
    1138M0321   02-08-2013  3       1       A       A       NULL
    1138M0323   02-08-2013  3       1       P       P       NULL
    1138M0324   02-08-2013  3       1       P       P       NULL    
    1138M0325   02-08-2013  3       1       P       P       NULL

我需要用 NULL更新这些字段之一* (h1/h2/h3) *。但我只能添加“”而不是实际的NULL 如何使用 NULL 更新表?

4

6 回答 6

3

NULL值必须是 SQL,而不是 .NET 值,因此不要尝试以下操作:

"... SET h1 = " & NULL & " ... "

只需在查询中使用它:

"... SET h1 = NULL ... "

注意:

空值不能用于区分表中的一行与表中的另一行所需的信息,例如主键。

请参阅MSDN 文档

于 2013-08-02T08:05:49.383 回答
2

为什么要使用 VB Nulls ...

UPDATE student_attendance_table SET h1 = NULL WHERE...
于 2013-08-02T08:02:21.453 回答
1
UPDATE student_attendance_table SET h3 = 'NULL' WHERE...

这将使您的表格如下所示:

**Register  Date        Year    Batch   h1      h2      h3**    
    1138M0321   02-08-2013  3       1       A       A       'NULL'
    1138M0323   02-08-2013  3       1       P       P       'NULL'
    1138M0324   02-08-2013  3       1       P       P       'NULL'
    1138M0325   02-08-2013  3       1       P       P       'NULL'

当你想显示列 h3 的值时。您可以trim使用单引号并显示 NULL。

于 2013-08-02T08:49:51.967 回答
0

如果您没有 NOT NULL 约束

"更新 student_attendance_table SET h1 = " & System.DBNull.Value & " WHERE...

于 2013-08-02T07:50:55.197 回答
0

如果你想坚持使用 NULL 那么它必须包含在语句本身中而不带任何参数,像经典方式一样使用:

"UPDATE student_attendance_table SET h1 = NULL WHERE...
于 2013-08-02T08:09:39.237 回答
0
"Update Table Set Column = (NULL As Column Type) where Condition"
于 2013-08-02T08:40:26.850 回答