mysql中的default_详解MySQL中default的使用

2023-11-20

详解MySQL中default的使用

发布时间:2020-10-03 17:50:29

来源:脚本之家

阅读:60

作者:子不语_wj

NULL 和 NOT NULL 修饰符、DEFAULT 修饰符,AUTO_INCREMENT 修饰符。

NULL 和 NOT NULL 修饰符

可以在每个字段后面都加上这 NULL 或 NOT NULL 修饰符来指定该字段是否可以为空(NULL),

还是说必须填上数据 (NOT NULL)。MySQL 默认情况下指定字段为 NULL 修饰符,如果一个字段指定为NOT NULL,

MySQL 则不允许向该字段插入空值(这里面说的空值都为 NULL),因为这是 “规定”。

/*

创建好友表,其中id ,name ,pass都不能为空

*/

create table friends (

id int(3) not null,

name varchar(8) not null,

pass varchar(20) not null

);

/*

错误提示,id列不能为空

#1048 - Column 'id' cannot be null

*/

INSERT INTO friends

VALUES (

NULL , 'simaopig', 'simaopig'

);

但是在自增列和 TIMESTAMP 字段中,这个规则并不适用。

向这些字段中插入 NULL 值将会导致插入下一个自动增加的值或者当前的时间戳。

DEFAULT 修饰符

可以使用 DEFAULT 修饰符为字段设定一个默认值。

当插入记录时,您老人家忘记传该字段的值时,MySQL 会自动为您设置上该字段的默认值。

/*

创建im表,将name字段设置为默认值'QQ'

*/

create table im (

id int(3) not null,

name varchar(25) not null default 'QQ'

);

/*

插入数据,不传name字段的值,MySQL会为其设置默认值的

您运行的 SQL 语句已经成功运行了。

*/

INSERT INTO im( id, name ) VALUES ( 2, 'MSN' ) ;

INSERT INTO im( id ) VALUES ( 3 ) ;

SELECT * FROM im LIMIT 0 , 30;

/*

id name

2 MSN

3 QQ

*/

如果一个字段中没有指定 DEFAULT 修饰符,MySQL 会依据这个字段是 NULL 还是 NOT NULL 自动设置默认值。

如果指定字段可以为 NULL,则 MySQL 为其设置默认值为 NULL。

如果是 NOT NULL 字段,MySQL 对于数值类型插入 0,字符串类型插入空字符串,

时间戳类型插入当前日期和时间,ENUM 类型插入枚举组的第一条。

AUTO_INCREMENT 修饰符

AUTO_INCREMENT 修饰符只适用于 INT 字段,表明 MySQL 应该自动为该字段生成一个数

(每次在上一次生成的数值上面加 1)。对于主键(稍候介绍),这是非常有用的。

因为其允许开发者使用 MySQL 为每条记录创建唯一的标识符。

/*

您运行的 SQL 语句已经成功运行了。 ( 查询花费 0.0170 秒 )

*/

CREATE TABLE items(

id int( 5 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,

label varchar( 255 ) NOT NULL

);

/*

插入三条数据,不指定id,采用默认值,加上AUTO_INCREMENT

您运行的 SQL 语句已经成功运行了。

*/

insert into items(label) values ('xxx');

insert into items(label) values ('yyy');

insert into items(label) values ('zzz');

/*

全显示出来,看一下数据,注意看id的变化

*/

select * from items;

/*

id label

1 xxx

2 yyy

3 zzz

*/

MySQL 表中只能有一个 AUTO_INCREMENT 字段,而且这个字段必须被定义为键。

除了字段的约束,MySQL 也允许表级的约束,比如主键和外键、索引和惟一约束。

总结

以上所述是小编给大家介绍的MySQL中default的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对亿速云网站的支持!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql中的default_详解MySQL中default的使用 的相关文章

  • wazuh安装手册

    一 wazhu部署架构 1 服务器上运行的Agent端会将采集到的各种信息通过加密信道传输到管理端 2 管理端负责分析从代理接收的数据 并在事件与告警规则匹配时触发警报 3 LogStash会将告警日志或者监控日志发送到Elasticsea
  • 第九章 细分着色器

    第九章 细分着色器 细分面片 细分着色器只能处理面片 patch 类型的图元 如果启用细分着色器 将其他类型图元传递给它会产生GL INVALID OPERATION错误 如果没有启用细分着色器 那么渲染面片数据也会得到GL INVALID
  • 【JFinal最省代码的框架】JFinal+Bootstrap实现后台管理系统主页

    原文 JFinal最省代码的框架 JFinal Bootstrap实现后台管理系统主页 源代码下载地址 http www zuidaima com share 1893049233067008 htm
  • 爱情和婚姻的区别

    有一天 柏拉图问老师苏格拉底什么是爱情 老师就让他先到到麦田里去 摘一棵全麦田里最大最金黄的麦穗来 期间只能摘一次 并且只可向前走 不能回头 柏拉图于是按照老师说的去做了 结果他两手空空的走出了田地 老师问他为什么摘不到 他说 因为只能摘一
  • 【DevOps视频笔记】6 - 7. Jenkins 介绍 和 安装

    一 Integrate 工具 二 Jenkins 介绍 1 Jenkins 最主要的工作 2 CI CD 可以理解为 2 1 CI 过程 2 2 CD 过程 三 Jenkins 安装 1 安装准备工作 2 安装 Jenkins Stage
  • 环境配置--解决torch.cuda.is_available()返回:False

    在网上很多都说是因为pytorch版本和CUDA不匹配造成的 但对于我的情况并不是 而是因为在官网默认下载到了的pytorch是cpu版本 真坑 另外在pycharm默认下载到的pytorch 1 9 0也是cpu版本 用不了cuda 1
  • 计算机设计大赛答辩提问,电子设计大赛答辩常见问题合集

    电子设计大赛答辩常见问题合集 由会员分享 可在线阅读 更多相关 电子设计大赛答辩常见问题合集 2页珍藏版 请在人人文库网上搜索 1 答辩常见问题合集1 本课题的选课背景 意义等等 这个论文中有的 也都是一些套话 我就不答了 我整理的都是技术
  • PLSQL创建新用户并导入导出.dmp文件

    一 登录管理员账号 用户名 密码 登录身份 说明 system manager SYSDBA 或 NORMAL 不能以 SYSOPER 登录 可作为默认的系统管理员 sys change on install SYSDBA 或 SYSOPE
  • 电路设计相关

    本人才疏学浅 孤陋寡闻 下文若有不当之处 还请赐教 1 一些概念 施密特触发器 施密特触发器采用电位触发方式 其状态由输入信号电位维持 对于负向递减和正向递增两种不同变化方向的输入信号 施密特触发器有不同的阈值电压 对于标准施密特触发器 当
  • 天眼使用指南--分析平台

    天眼分析平台 提供全面的溯源分析能力 涵盖图中模块 负责存储日志 分为三类 告警日志 告警日志 来自探针和沙箱的告警 探针的告警可以记录双向完整对话 如果网络流量中没有恶意信息 就会储存一些关键信息 如http请求部分状态码 tcp上下前一
  • 用python批量插入clickhouse

    用python批量插入clickhouse 以下是一个示例代码 演示了如何使用clickhouse driver模块实现批量插入和分布式查询 import clickhouse driver import random connect to
  • C语言函数调用过程

    文 读书笔记 C语言函数调用过程 c legendmohe 2015年07月12日发布 推荐 0 推荐 收藏 0 收藏 392 浏览 本文是 老码识途 第一章的读书笔记 函数调用 例子代码如下所示 int Add int x int y i
  • 什么是参数模型(LR)与非参数模型(SVM)

    什么是参数模型 LR 与非参数模型 SVM 在统计学中 参数模型通常假设总体 随机变量 服从某一个分布 该分布由一些参数确定 比如正太分布由均值和方差确定 在此基础上构建的模型称为参数模型 非参数模型对于总体的分布不做任何假设 只是知道总体
  • jQuery Validate验证框架详解

    jQuery校验官网地址 http bassistance de jquery plugins jquery plugin validation 一 导入js库 注 返回web项目的根路径 二 默认校验规则 1 required true
  • 测试大姐趁我下班点又提了个bug!前端你咋多个options请求?

    测试大姐提了个bug 为什么你多了个options请求 1 下班前的寂静 刚准备下班呢 测试大姐又给我提个bug 你看我这就操作了一次 network里咋有两个请求 我心一惊 不可能啊 我代码明明就调用一次后端接口 咋可能两个请求 打开她的
  • floor(),ceil()函数

    地板 天花板函数 均包含在math h中 意思分别为 返回不大于形参的最小整数和不小于形参的最大整数 include
  • Git冲突导致的Please commit your changes or stash them before you merge

    Git冲突导致的Please commit your changes or stash them before you merge 用git pull来更新代码的时候 遇到了下面的问题 error Your local changes to
  • js检查数据类型的方法

    1 typeof 这是最常用的基本数据类型检测的方法 console log typeof string console log typeof 1 number console log typeof true boolean console
  • spring boot最新教程(五):404错误500错误统一处理

    Spring Boot默认使用嵌入式Tomcat 默认没有页面来处理404等常见错误 因此 为了给用户最佳的使用体验 404 500等常见错误需要我们自定义页面来处理 我们需要用org springframework boot contex

随机推荐

  • 威动服务器如何添加文件夹,威动服务器如何设置

    威动服务器如何设置 内容精选 换一换 华为云提供两种连接方式通过SQL Server客户端连接实例 非SSL连接和SSL连接 其中 SSL连接实现了数据加密功能 具有更高的安全性 安装SQL Server客户端请参见如何安装SQL Serv
  • 如何使用 Docker 部署 Caddy Web 服务器

    Caddy是一种流行的现代 Web 服务器 专为高性能和内存安全而设计 它是用 Go 编写的 运行时没有依赖关系 内置支持使用 Markdown 进行静态站点渲染 并提供自动 HTTPS Caddy 专注于提供简单的服务器管理体验 默认情况
  • Vue + Element UI 前端篇(十一):第三方图标库

    Vue Element UI 实现权限管理系统 前端篇 十一 第三方图标库 使用第三方图标库 用过Elment的同鞋都知道 Element UI提供的字体图符少之又少 实在是不够用啊 幸好现在有不少丰富的第三方图标库可用 引入也不会很麻烦
  • HDFS常用命令

    1 hdfs dfs与hadoop fs 命令的形式 hdfs dfs linux命令 这与linux中命令操作是一样的 hadoop fs等同于hdfs dfs 2 Hadoop命令 hadoop classpath 打印当前hadoop
  • 程序员的自我修养(九)虚拟内存空间

    进程的虚拟地址 每个程序被运行起来以后 它将拥有自己独立的虚拟地址空间 这个虚拟地址空间的大小由计算机的硬件平台决定 具体的说是由CPU的位数决定 对于Linux系统来说 它的进程虚拟空间的划分 1GB 操作系统 3GB 进程 对于Wind
  • derby mysql 性能_derby的三大缺陷

    derby数据库的嵌入式特性让人很流口水 但是 我刚打算将其用进我的项目中 却发现它没有好的分页查询方式 每次都返回所有符合条件的记录 oracle有rownum mysql有limit sqlserver好歹也有个top 汗啊汗 看来不爽
  • 【ROS入门学习01

    ROS命令行工具的使用 可以配合古月居的ROS入门教程来学习实践 文章目录 ROS命令行工具的使用 一 roscore 二 rosrun 三 rqt graph 四 rosnode 五 rostopic 六 rosmsg 七 rosserv
  • 客观面试题--35.Mybatis和hibernate的优缺点?

    Hibernate Hibernate 是当前最流行的ORM框架 对数据库结构提供了较为完整的封装 Mybatis Mybatis同样也是非常流行的ORM框架 主要着力点在于POJO 与SQL之间的映射关系 其次具体从几个方面说一下两者的区
  • 自己动手部署以太坊联盟链

    一个区块链学习项目 GitHub https github com xianfeng92 Love Ethereum 假设已经在Ubunbu 14 04 LTS上安装好了以太坊客户端Geth 使用Geth部署以太坊联盟链 以太坊Geth客户
  • java jvm dump文件_干货分享丨jvm系列:dump文件深度分析

    摘要 java内存dump是jvm运行时内存的一份快照 利用它可以分析是否存在内存浪费 可以检查内存管理是否合理 当发生OOM的时候 可以找出问题的原因 那么dump文件的内容是什么样的呢 JVM dump java内存dump是jvm运行
  • 45_SDIO基础知识

    目录 SDIO协议简介 SDIO设备分类 SD卡物理结构 SD卡寄存器列表 SDIO总线拓扑 SDIO总线 SDIO总线协议 SDIO命令 命令格式 命令类型 响应 SD卡的操作模式 卡识别模式 数据传输模式 STM32 SDIO功能框图
  • vue中element 的 el-table数据量大时,出现卡顿情况解决办法

    一 安装 npm install umy ui 二 引入js和css import umy ui lib theme chalk index css 引入样式 import UTable UTableColumn from umy ui V
  • 时间戳问题汇总

    大家好 我刚接触流媒体不久 现在遇到一个非常奇怪的问题 向各位大侠请假 请你们指点 问题是这样的 用一个 VLC 流媒体客户端 去请求流媒体服务器上的数据 但是获得的数据播放速度明显快于1倍速 大概是 timestamp 不对 不知道是服务
  • 关于Qos中常用的CIR、PIR、CBS、PBS、EBS的解释以及用法关系

    CIR Committed Information Rate 承诺信息速率 每秒可通过的速率 计量单位为Kbps 以bit 位为单位 如设置为500Kbps 每8bit位 1Byte 1Kbps 1024bit PIR Peak Infor
  • ERROR: Could not find a version that satisfies the requirement XXX解决方法

    出现问题 ERROR Could not find a version that satisfies the requirement XXX解决方法 找了很久终于找到能解决这种报错的方法了 直接选用pip源并且信任它的来源就可以解决这种问题
  • No grammar constraints (DTD or XML schema) detected for the document

    No grammar constraints DTD or XML schema detected for the document
  • ESP8266与手机App通信(STM32)

    认识模块 ESP8266是一种低成本的Wi Fi模块 可用于连接物联网设备 控制器和传感器等 它具有小巧 高度集成和低功耗的特点 因此在物联网应用中被广泛使用 ESP8266模块由Espressif Systems开发 具有单芯片的封装和多
  • case when 作为条件_sqlserver条件分支case when使用教程

    在sqlserver的条件分支case when有两种写法 1 case 字段 when 值 then 返回值 when 值2 then 返回值2 end 2 case when 条件1 then 返回值1 when 条件2 then 返回
  • 【翻译】 zswap 压缩交换缓存

    您知道吗 LWN net 是一份由订阅者支持的出版物 我们依靠订阅者来维持整个运作 请通过订阅来帮助我们 让 LWN 继续在网络上运行 2013年2月12日 本文由 Seth Jennings 投稿 交换是性能的最大威胁之一 即使在快速固态
  • mysql中的default_详解MySQL中default的使用

    详解MySQL中default的使用 发布时间 2020 10 03 17 50 29 来源 脚本之家 阅读 60 作者 子不语 wj NULL 和 NOT NULL 修饰符 DEFAULT 修饰符 AUTO INCREMENT 修饰符 N