SQL insert插入中存在属性值为空
在定义数据库的表的时候,我们知道有些属性我们可以设置让它可以为空,这样可以让我们在某些数据缺失的时候依然将信息插入表中。但是,这就涉及到了一个问题,如果有属性为空,我们在写插入语句的时候该如何写呢?今天做实验的时候我就遇到了这个困惑,并对此做了些尝试,现在将结果分享给大家,希望对大家能有所帮助。
首先,我们来看看这张表s的设计,在Navicat中,我们新建了这样一张表,其中除了主键sno,其他属性均可为空。
s表内容如下:
然后我们对这张表创建了一个视图v_xsqk,视图展示了s表中的sno,sname,ssex,sbirth这些属性。构建视图的结果如下:
好的,准备工作的介绍到此结束,下面我们进入正题。
我们的目标是:向视图V_XSQK中插入一条记录:‘2020206’,‘李红’,‘1983-12-3’。
很明显,添加的记录中缺少属性ssex,那么这个属性我们该怎么对它进行处理呢?
首先,我想的第一种方法是在插入语句中,这个属性的值不填,代码如下:
insert into v_xsqk values('2020206', '李红', , '1983-12-3');
显然这种方法是行不通的,返回了一行报错。
这种方法不行,那么我们换个思路。既然属性值为空,我们干脆不填值就好了,于是就有了下面这行代码:
insert into v_xsqk values('2020206', '李红', '', '1983-12-3');
先来看看结果:
乍一看,没毛病是吧?ssex为空,没有值。但是这只是视图的视角,我们一旦查看原表就露馅了:
由于视图中没有Sdept属性,所以插入表s后Sdept为默认空值。此时我们的ssex值应该也为空,显示NULL,然而我们并没有做到这一点。所以说这样写也不好。
那么正确的写法是什么呢?根据上图的启示,为空的属性值我们就填NULL就好了,于是有了下面这行代码:
insert into v_xsqk values('2020206', '李红', NULL, '1983-12-3');
我们先执行试试:
已经成功的执行了该语句,然后让我们看看结果,首先是视图:
在ssex一栏中成功地显示了NULL。然后我们来看看表s:
这样看起来就协调多了,我们的问题就解决了。
总结一下,为了实现缺少属性值的插入,我们一共试了三种方法,其中第一种是存在语法错误的;第二种可以通过语法检查,但是插入的结果不尽人意;第三种方法应该是最好的插入方法,在为空的值的位置填上NULL,这样更加切合默认空值。
本次小分享到此结束,谢谢观看,希望能帮到大家。
SQL insert插入中存在属性值为空相关推荐
- 关于ArcGIS中选择属性值为空的语句
关于ArcGIS中选择属性值为null的语句 使用Select by Attributes工具编写Where语句 选中某字段值为空值的要素 使用Select by Attributes工具编写Wher ...
- sql语句insert插入函数如果values值括号里放变量名
sql语句insert插入函数如果values值括号里直接放变量名就会到时表增加了一个空的记录,解决方法是使用特殊格式 String sql = "insert into user(name ...
- Java:比较两个对象中全部属性值是否相等
点击关注公众号,实用技术文章及时了解 来源:xiaoer.blog.csdn.net/article/details/85005295 例如下述Java类: import java.io.Serial ...
- springboot log4j2.xml读取application.yml中的属性值
注意:部份代码太长,可以通过文末的图片快速查看对应位置 项目需求 用户想自己配置日志存放的位置,因此我们需要满足提供可以配置的文件,用以满足用户的需求. 因此,我们主要通过 log4j2.xml 来读 ...
- SpringMVC js如何获取后台model中的属性值
SpringMVC js如何获取后台model中的属性值 companylist 如何获取 var companylist="${companylist}"; 希望对你有所帮助 个 ...
- s:property=a value=/取的s:debug/s:debug中的value stack中的属性值
<s:property="a" value=""/>取的<s:debug></s:debug>中的value stack中 ...
- 在jsp中调用常量类中的属性值
在jsp中想要调用常量类中的属性值方法: 1. 在jsp中导入此常量类 <%@page import="com.Zyp.constant.FlagConstant"%& ...
- 微信小程序如何实现通过js修改wxml的for循环中的属性值
微信小程序如何实现通过js修改wxml的for循环中的属性值 要实现的效果 具体代码 要实现的效果 点击每一个活动选项,实现显示对应的操作按钮 具体代码 首先要在对应页面的js中给data中定义数组, ...
- CSS中position属性值有哪些?
CSS中position属性值有哪些? 1.position:relative;相对定位 1> 不影响元素本身特性(无论区块元素还是内联元素会保留其原本特性) 2> 不会使元素脱离文档流( ...
最新文章
- 循环 Request.ServerVariables
- Oracle学习总结(7)—— 常用的数据库索引优化语句总结
- 企业或将借助OA走出经济危机
- linux yum 链接,Linux YUM之YUM仓库
- Python编程语言介绍
- atitit.TokenService v3 qb1 token服务模块的设计 新特性.docx
- 怎么下载英文文献?多种方法告诉你
- 计算机网络工程综合布线目的,浅谈网络工程综合布线系统
- 文件格式介绍:文本,图片,音频,视频
- 杀软和防火墙简单列表
- 数据分析方法论(6种方法,8个思路)
- 2003iso序列号
- 人人商城二次开发 各个装修模块diypage的自定义样式
- 北京游玩攻略,-怎么游玩清华北大
- 「图文」介绍下微信怎么拉票刷票及微信投票怎样自己拉票方法
- C++自带string类的常用方法
- java的选项板_你用CAD的工具选项板吗?
- 一键分享到新浪微博、腾讯微博、搜狐微博、人人网、开心网、百度收藏等js代码大全...
- 手把手教你入门 Git 教程,图文实例详解
- 08-Hibernate3.6.2 查询02 by SQL QBC QBE
热门文章
- 【77 backtrader的一些高级技巧】如何使用backtrader更好的计算夏普率?
- win10硬盘锁怎么解除_如何解除Windows10系统磁盘加密?
- 第七讲 幂级数的运算与和函数
- Shader之——高效率高度雾 云海
- COS函数和ACOS函数的使用
- 金属学复习【1】金属的晶体结构
- wuc-tab标签点击不了_买白酒时,不论啥牌子,只要标签上有“这行字”,全是酒精勾兑酒...
- 【Java 数据结构 算法】宁可累死自己, 也要卷死别人 12 红黑树
- 解决Windows 11网络连接问题:教你轻松排查网络故障
- Galera集群--搭建(2个数据节点+1个仲裁)