问题:
在一个定义了默认值的列插入数据,并且需要不管该列的默认值是什么,都将该列值设为NULL。考虑一下下面的表:

create table D (id interger default 0, foo varchar(10))

希望插入一行, 其中id值为NULL

解决方案:
可以在值列表中明确地指定NULL值:

insert into d (id, foo) values (null, 'Brighten')

讨论

并不是所有人都知道可以在insert语句的值列表中明确指定NULL值。人们通常的做法是,如果在插入操作时不需要对某列指定值,只是将该列从插入列表和值列表中去掉。

insert into d (foo) values('Brighten')

在上面的语句中没有指定id值。许多人可能认为列没有被指定值时,应当被赋予空值。但是,如果该列在创建的时候被指定了默认值,结果就是在执行insert指令时,id字段的值被赋予0(默认值)。如果想要将某列的值设定为null。则就需要指定该列值为null,而不管该列是否有默认值。

4.03 使用NULL代替默认值的更多相关文章

  1. 【杂记】mysql 左右连接查询中的NULL的数据筛选问题,查询NULL设置默认值,DATE_FORMAT函数

    MySQL左右连接查询中的NULL的数据筛选问题 xpression 为 Null,则 IsNull 将返回 True:否则 IsNull 将返回 False. 如果 expression 由多个变量 ...

  2. SQL SERVER 查看数据库表的字段类型,是否允许为NULL,默认值,主键等

    )-- 表名 set @table_name='bqcform101' --============表结构 select 类别,表名or字段名,描述,字段类型,是否自增,允许为NULL,默认值 fro ...

  3. SQL 语句修改列名 属性 默认值

    --修改字段名exec sp_rename '表名.列名','新列名' --修改字段属性alter table 表名 alter column 列名 nvarchar(100) null; --修改默 ...

  4. 数据库六大约束用法:主键(primary key)、外键(foreign key)、非空(not null)、默认(default)、检查(check)、唯一(unique)

    1. 数据库有六大约束 主键(primary key) 外键(foreign key):被参照的键必须有唯一约束或是主键 非空(not null) 默认(default) 检查(check):orac ...

  5. Django model.py表单设置默认值允许为空

    blank=True 默认值为blank=Flase,表示默认不允许为空, blank=True admin级别可以为空   null=True 默认值为null=Flase,表示默认不允许为空 nu ...

  6. [原创] Shell 参数传递 与 默认值

    目录 简介 基本传参 $* 与 $@ 区别 默认参数(变量默认值) if 繁琐方式 - 变量为null = 变量为null时, 同时改变变量值 :- 变量为null 或 空字符串 := 变量为null ...

  7. Sqlserver添加加字段、删除字段、修改字段类型、修改字段名、修改字段默认值

    参考:https://www.cnblogs.com/pangpanghuan/p/6432331.html 初始化表: --.添加字段 --1.1.为null alter table DataTab ...

  8. java 反射: 当Timestamp类型的属性值为null时,设置默认值

    import java.beans.PropertyDescriptor; import java.lang.reflect.Field; import java.lang.reflect.Metho ...

  9. MySql数据库查询表信息/列信息(列ID/列名/数据类型/长度/精度/是否可以为null/默认值/是否自增/是否是主键/列描述)

    查询表信息(表名/表描述): SELECT table_name name,TABLE_COMMENT value FROM INFORMATION_SCHEMA.TABLES WHERE table ...

随机推荐

  1. 「NOIP2005」「Codevs1106」篝火晚会

    题目描述 Description 佳佳刚进高中,在军训的时候,由于佳佳吃苦耐劳,很快得到了教官的赏识,成为了“小教官”.在军训结束的那天晚上,佳佳被命令组织同学们进行篝火晚会.一共有n个同学,编号从1 ...

  2. 【USACO 2857】 Steady Cow Assignment

    [题目链接] 点击打开链接 [算法] 二分答案,check的时候跑最大流,即可 [代码] #include<bits/stdc++.h> using namespace std; #def ...

  3. 【USACO06NOV】路障

    [题目链接] 点击打开链接 [算法] 最短路 [代码] #include<bits/stdc++.h> using namespace std; #define MAXN 5000 #de ...

  4. bzoj 1098 办公楼biu —— 链表+栈

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1098 首先,没有连边的人一定得在一个连通块里: 先把所有人连成一个链表,然后从第一个人开始, ...

  5. MP4V2库与MP4AV库编译

    最近在开发一个将RTP流存储为MP4文件的功能.其中针对MP4文件读写,用到了两个开源的库.其中MP4V2用于数据的读写,MP4AV用于对其中的数据帧进行分析. MP4V2和MP4AV都是开源项目MP ...

  6. 【旧文章搬运】PE重定位表学习手记

    原文发表于百度空间,2008-11-02========================================================================== 先定义一下 ...

  7. The IBM Blockchain Platform:Installing the development environment

    Follow these instructions to obtain the IBM Blockchain Platform: Develop development tools (primaril ...

  8. Codeforces34C【尺取】

    题意: 输入一系列的数,连续数字则输出连续区间 看第一个案例就很明显 思路: 输入字符串输入,预处理一下. 写了个挫尺取- 贴一发挫code--. #include <bits/stdc++.h ...

  9. HDOJ1864(水的可怜)

    注意这句话:精确到小数点后两位如果是小数点的话 HDOJ1864 #include<stdio.h> #include<iostream> #include<algori ...

  10. hdu 1521 排列组合【指数型生成函数】

    根据套路列出式子:\( \prod_{i=1}^{n}\sum_{j=0}^{c[i]}\frac{x^j}{j!} \),然后暴力展开即可 #include<iostream> #inc ...