当使用insert语句向表中插入一条记录时,会有以下几种情况:

■如果该字段有一个缺省值,该值会被使用。例如,假设你插入新记录时没有给字段third_column提供数据,而这个字段有一个缺省值’some value’。在这种情况下,当新记录建立时会插入值’some value’。
■如果该字段可以接受空值,而且没有缺省值,则会被插入空值。
■如果该字段不能接受空值,而且没有缺省值,就会出现错误。你会收到错误信息:
The column in table mytable may not be null.
■最后,如果该字段是一个标识字段,那么它会自动产生一个新值。当你向一个有标识字段的表中插入新记录时,只要忽略该字段,标识字段会给自己赋一个新值
例子:
表结构如下

对student这个空表执行以下操作

  1. insert into student
  2. values('张三',0,'123') --id 是标识字段,向一个有标识字段的表中插入新记录时,只要忽略该字段,标识字段会给自己赋一个新值
  3. insert into student(name,sex,class )
  4. values('李四',0,'123')--bit类型的语句插入时值为0或1,查看表数据时已经是true或false
  5. insert into student(name,class)
  6. values('李四','123') ---sex 如果该字段可以接受空值,而且没有缺省值,则会被插入空值。
  7. ----如果该字段不能接受空值,而且没有缺省值,就会出现错误。你会收到错误信息:The column in table mytable may not be null.
  8. alter table student add constraint df_sex default(1)for sex --为字段设置缺省值
  9. insert into student(name,class)
  10. values('王五','234')
  11. insert into student(name,class)
  12. values('王九','234')
  13. print @@identity  ---插入条新数据后,返回最后一次插入标识字段的值

执行后表数据如下

转载于:https://blog.51cto.com/3941954/769564

insert 语句常见问题相关推荐

  1. SQL基础学习总结:6(INSERT语句的相关使用方法)

    数据的插入(INSERT语句的使用方法) 我们之前在表的创建部分简单地介绍了一下INSERT语句的功能和使用方法,现在我们再详细讲一下它的用法. INSERT语句的基本语法 其语法结构如下: INSE ...

  2. 将表里的数据批量生成INSERT语句的存储过程 增强版

    原文:将表里的数据批量生成INSERT语句的存储过程 增强版 将表里的数据批量生成INSERT语句的存储过程 增强版 有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的 ...

  3. 将表里的数据批量生成INSERT语句的存储过程 继续增强版

    文章继续 桦仔兄的文章 将表里的数据批量生成INSERT语句的存储过程 增强版 继续增强... 本来打算将该内容回复于桦仔兄的文章的下面的,但是不知为何博客园就是不让提交!.... 所以在这里贴出来吧 ...

  4. MyBatis—insert语句返回主键和selectKey标签

    本文已同步至个人博客liaosi's blog - MyBatis-insert语句返回主键和selectKey标签 往数据库中插入一条记录后,有时候我们需要这条记录的主键,用于后续的操作.如果在插入 ...

  5. insert 语句_[原理解析] MySQL insert语句的磁盘写入之旅

    一条insert语句在写入磁盘的过程中到底涉及了哪些文件,顺序又是如何的?下面我们用两张图和大家一起解析insert语句的磁盘写入之旅. 图1: 事务提交前的日志文件写入 旅途过程: 首先 inser ...

  6. SQLite中特殊的INSERT语句

    SQLite中特殊的INSERT语句 在SQLite中,INSERT是基本语句,用来向表中插入数据.但是当表中存在字段存在唯一.非空.检查.主键等约束时,插入的数据很容易和约束冲突,造成插入操作失败. ...

  7. 一条诡异的insert语句

    作者 | 天士梦 来源 | https://www.cnblogs.com/cchust/p/4601536.html 问题背景 有同事反馈在mysql上面执行一条普通的insert语句,结果报错, ...

  8. db2 如何导出insert语句_实用技术:MYSQL特别实用的几种SQL语句送给大家,让你的SQL高大上...

    整理自公众号:[程序员闪充宝] 在写SQL时,经常灵活运用一些SQL语句编写的技巧,可以大大简化程序逻辑.减少程序与数据库的交互次数,有利于数据库高可用性,同时也能显得你的SQL很牛B,让同事们眼前一 ...

  9. db2 如何导出insert语句_《MySQL 入门教程》第 23 篇 DML 语句之插入数据

    文章来源:https://blog.csdn.net/horses/article/details/108287687 原文作者:不剪发的Tony老师 来源平台:CSDN 数据库的基本操作包括增.删. ...

最新文章

  1. 上高职业技术学校计算机学几年,上高职业技术学校2021年有哪些专业
  2. svg path属性
  3. 【转】java接口的性能测试
  4. ui原型设计工具_UI设计师的工具包,用于专业模型,原型和产品插图
  5. anaconda2/bin/../lib/libstdc++.so.6: version `GLIBCXX_3.4.20' not found Import No module named googl
  6. arcgis渔网分割提取栅格图_【操作】ArcGIS中字段的合并、分割、提取
  7. 环境变量environ
  8. LintCode 生成括号
  9. web之XmlHttpRequest
  10. php正则表达式修饰符详解
  11. MySQL 高阶语句之函数存储
  12. 小米手机定时开关机在哪里设置?让你的小米手机“休息一下”
  13. vmware7序列号
  14. How to delete files beginning with -- in Linux
  15. 基于springboot+vue的食疗系统
  16. 应用中删除iCloud照片或视频 删除相册照片或视频
  17. 添加ubuntu开机引导
  18. CPSR SPSR
  19. 概述-元数据是什么?
  20. 移动端基于Vant组件封装底部弹出搜索多选列表

热门文章

  1. git stash和git stash pop
  2. Python之Selenium的爬虫用法
  3. 2016年,你该如何在 Facebook 上做营销?
  4. 关于node.js的进程管理
  5. 739. Daily Temperatures
  6. Base64的解码和编码
  7. UbuntuKylin技巧
  8. crypt函数的使用(仅限LINUX)
  9. 加密与解密以及openssl的应用
  10. ZeroMQ在windows下不同语言的编译