磁盘上怎么存储NULL值?
1 为何不能直接存个NULL?
NULL值列表,一行数据里可能有的字段值是NULL,比如nickname字段,允许为NULL,存储时,如果没赋值,这字段值就是NULL。
假设这个字段的NULL值在磁盘存储时,就是按"NULL"字符串存储的,是不是很浪费存储空间而且还奇怪? 2 到底怎么存储?
不通过字符串,而是通过二进制bit位存储,一行数据里假设有多个字段的值都是NULL,那么这多个字段的NULL,就会以bit位形式存放在NULL值列表。
如下表: CREATE TABLE customer ( name VARCHAR(10) NOT NULL, address VARCHAR(20), gender CHAR(1), job VARCHAR(30), school VARCHAR(50) ) ROW_FORMAT=COMPACT;
有4个变长字段,还有个定长字段,name声明NOT NULL,其他4个字段都可能NULL
如下一行数据怎么存储在磁盘呢: jack NULL m NULL xx_school
有俩字段都是NULL 3 一行数据的磁盘存储格式
思考上面那个表里的那行案例数据,在磁盘上如何存储呢,因为他有多个变长字段,还有多个字段允许为NULL。首先我们先回顾一下,一行数据在磁盘上的存储格式应该是下面这样的: 变长字段长度列表 NULL值列表 头信息 column1=value1 column2=value2 ... columnN=valueN
4个变长字段,逆序先放school字段的长度,再放job、address、name几个字段的值长度?
但要区分一个问题,若这变长字段值为NULL,就不用在变长字段长度列表里存放他的值长度,所以在上面那行数据,只有name和school两个变长字段有值,把他们的长度按照逆序放在变长字段长度列表即可: 0x09 0x04 NULL值列表 头信息 column1=value1 column2=value2 ... columnN=valueN
所有允许值为NULL的字段,不是说值就得是NULL,只要是允许为NULL的字段,每个字段都有个二进制bit位值: bit值是1说明是NULL bit值是0说明不是NULL
比如上面4个字段都允许为NULL,每个人都会有一个bit位,这一行数据的值是 jack NULL m NULL xx_school
其中2个字段是null,2个字段不是null,所以4个bit位应该是:1010
但实际放在NULL值列表时,按逆序放,所以NULL值列表里放的:0101,整体这一行数据如下: 0x09 0x04 0101 头信息 column1=value1 column2=value2 ... columnN=valueN
实际NULL值列表存放时,一般起码8个bit位的倍数,不足8个bit位就高位补0,所以实际存放如下: 0x09 0x04 00000101 头信息 column1=value1 column2=value2 ... columnN=valueN4 如何读磁盘的一行数据?
磁盘数据存储格式: 0x09 0x04 00000101 头信息 column1=value1 column2=value2 ... columnN=valueN
先读: 变长字段长度列表就知道有几个变长字段 NULL值列表哪些变长字段是NULL
从变长字段长度列表中解析出不为NULL的变长字段的值长度,然后也知道哪些字段是NULL。根据这些信息,就能从实际的列值存储区域里,把你每个字段的值读取出来了。 变长字段值,就按值长度读取,若为NULL,就知道他是个NULL,没有值存储 定长字段,按定长长度读取
司马南老师的初心?通过看完司马南老师的视频,并不是对联想有什么大仇,而是预警联想控股的P2P暴雷,一个科技型企业,民族品牌,做一行专一行精一行,服务社会,赚好它该赚的钱即可,为什么需要6张小贷牌照?
顺顺学党史11月25日顺顺学党史11月25日习近平总书记在党史学习教育动员大会上强调,全党同志要做到学史明理学史增信学史崇德学史力行,学党史悟思想办实事开新局,以昂扬姿态奋力开启全面建设社会主义现代化国
立讯精密投资机会中信电子立讯精密(002475。SZ)跟踪报告平台型布局龙头,一体化扩张助力新一轮成长公司概览低估值稳扩张的消费电子平台型龙头,紧跟大客户创新,一体化布局开启第二成长曲线。2018
哔哩哔哩回应提前3天自动续费被点名自查自纠海报新闻记者于明效上海报道11月25日,哔哩哔哩(B站)对会员提前3天自动续费的情况作出回应,称公司非常重视,第一时间进行自查自纠,并将马上着手进行优化,将自动续费期限调整为提前2
有哪些能给人带来极大幸福感的家用电器?下面说一些给我带来幸福感的电器吧1即热型饮水机再也不用准备烧水壶热水瓶凉水壶这些瓶瓶罐罐好多样了,只需要这样一个电器就能做到随时喝水,调节各种温度的水,泡奶泡茶都很方便,多喝热水哦
八代酷睿电脑为何值得买?欢迎在点击右上角关注太平洋电脑网,更多有趣资讯等着您哦。我来说说笔记本的。四月初英特尔推出了八代酷睿高性能处理器,表明上看只是一次CPU产品的常规升级,实际上八代酷睿高性能处理器不
印度首富安巴尼吹嘘的印度手机,出来了首先说一下这个事情的来龙去脉。当时印度首富安巴尼扬言说要搞特别廉价的手机,才50美元,然后销售,再利用推广出去的手机搞金融业务,XX贷之类的。说实话,这个模式有一定的可行性,毕竟靠
为什么小米手机参数那么高,但综合体验就是差强人意呢?华为天下第一,宇宙第一,满意了吧。哪里差?列举出来小米硬件配置没输过,体验没赢过。亲身体会,MIUI拉胯。小米大部分机型性价比确实很高,相同的硬件配置比其他牌子便宜。但是系统调教越
阿里三季度财报账上有4434亿元,每天能产生多少利息?按5年利率计算,每天产生利息443453650。607亿,相当于6070万,不过一般银行应该吃不下吧,只有国有大行才有可能有那个能力办理这么大的存款阿里巴巴第三季度财务报账4434
电脑实用小工具有一说一杀毒软件电脑管家这些软件里面的一些小工具还是非常好用的。比如他们的弹窗拦截啊,断网修复,强力删除,垃圾清理,开机加速c盘搬家系统急救,还有加速球等等等等很多很多。但是啊想要
消失了十年的首富陈天桥,资产悄悄膨胀了5倍来源百度新闻匠心计划创作者,资深财经作者,优质财经领域创作者帅真财经2004年在中国互联网发展史上,具有特殊意义。这一年,中概股盛大集团正式登陆纳斯达克,为中国互联网公司打开了国际