Mysql中的 not null

Mysql中的 not null创建医生信息表 doctor info1 doctor info2 区别是 doctor info1 中 doctor name 加上 notnull 约束 CREATETABLE doctor info1 id bigint 20 NOTNULLAUTO INCREMENT doctor name varchar 32 NOTNULL doct

创建医生信息表 doctor_info1 、doctor_info2 ,区别是 doctor_info1 中doctor_name 加上not null 约束

CREATE TABLE `doctor_info1` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `doctor_name` varchar(32) NOT NULL, `doctor_code` varchar(32) DEFAULT NULL, `dept_code` varchar(32) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COMMENT='医生信息表'; CREATE TABLE `doctor_info2` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `doctor_name` varchar(32) DEFAULT NULL, `doctor_code` varchar(32) DEFAULT NULL, `dept_code` varchar(32) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COMMENT='医生信息表'; 

Mysql中的 not nullMysql中的 not null

不使用Null 的好处

SELECT * FROM doctor_info2 WHERE doctor_name != '王平'

Mysql中的 not null

2、单列索引不存null值,复合索引不存全为null的值,如果列允许为null,可能会得到 不符合预期的结果集

3、如果两个字段进行拼接:比如 doctor_code + dept_code,首先要各字段进行非null判断,否则只要有任意一个字段为空都会导致拼接的结果为null。比如使用 concat 函数拼接时同理。

Mysql中的 not nullMysql中的 not null

4、如果有 Null column 存在的情况下,count(Null column)需要格外注意,null 值不会参与统计.

     注意 Null 字段的判断方式, = null 将会得到错误的结果(用is null 、is not null 来判断)。

5、Null 列需要更多的存储空间:需要一个额外字节作为判断是否为 NULL 的标志位。

 

Mysql 中设置 not null 和 DEFAULT 约束 对象入参为null的情况:

1. 在代码中给对象设置默认值

2. 手写sql  insert 语句,对象中为null 不需要入库的字段 不在sql中插入

 
  
    INSERT INTO fms_order_statement (statement_batch_number, batch_type, batch_type_name, store_name, store_type_name, area_name, statement_date) VALUES 
   
     (#{item.statementBatchNumber}, #{item.batchType},#{item.batchTypeName}, #{item.storeName},#{item.storeTypeName},#{item.areaName},#item.statementDate}) 
    
  

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/225140.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午10:01
下一篇 2026年3月17日 上午10:01


相关推荐

  • OpenClaw教程(八)—— 为OpenClaw打造记忆系统

    OpenClaw教程(八)—— 为OpenClaw打造记忆系统

    2026年3月13日
    2
  • java笛卡尔积算法_Java 笛卡尔积算法的简单实现

    java笛卡尔积算法_Java 笛卡尔积算法的简单实现笛卡尔积算法的Java实现:(1)循环内,每次只有一列向下移一个单元格,就是CounterIndex指向的那列。(2)如果该列到尾部了,则这列index重置为0,而CounterIndex则指向前一列,相当于进位,把前列的index加一。(3)最后,由生成的行数来控制退出循环。publicclassTest{privatestaticString[]aa={“aa1”,”aa2…

    2022年7月27日
    25
  • java循环语句_Java中的循环语句

    java循环语句_Java中的循环语句1.1while循环语句while语句也称为条件判断语句.循环方式:利用一个条件来控制是否要反复执行这个语句.语法:1while(条件表达式){2执行语句3}当条件表达式的返回值为真时,执行”{}”中的语句,当执行完”{}”中的语句后,重新判断条件表达式的返回值,直到表达式返回的结果为假时,退出循环.注意:不能在while表达式的括号后面不加”{}”!!…

    2022年7月7日
    21
  • JS获取时间

    JS获取时间JS 获取时间一 JS 获取当前时间 varmyDate newDate myDate getYear 获取当前年份 2 位 myDate getFullYear 获取完整的年份 4 位 1970 myDate getMonth 获取当前月份 0 11 0 代表 1 月 myDate getDate 获取当前日 1 31 myDate getDay 获取当前星期 X 0 6 0 代

    2026年3月26日
    1
  • 如何利用 OpenClaw 快速赚钱?这 5 个方法让我 MRR 从 1.8 万涨到 2.8 万

    如何利用 OpenClaw 快速赚钱?这 5 个方法让我 MRR 从 1.8 万涨到 2.8 万

    2026年3月15日
    2
  • java常见证书类型和密钥库类型

    java常见证书类型和密钥库类型一 证书类型 nbsp nbsp 1 证书概念 nbsp nbsp nbsp 证书是对现实生活中某个人或者某件物品的价值体现比如古董颁发见证书 人颁发献血证等通常证书会包含以下内容证书拥有者名称 CN 组织单位 OU 组织 O 城市 L 区 ST 国家 地区 C nbsp nbsp nbsp 证书的过期时间证书的颁发机构证书颁发机构对证书的签名 签名算法 对象的公钥等 nbsp nbsp nbsp nbsp 数字证书的格式遵循 X 5

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号