当前位置: 首页 > news >正文

北京网络网站建设价格dw 如何做自适应网站

北京网络网站建设价格,dw 如何做自适应网站,开发者选项怎么打开,做网站比较好的公司有哪些前言 这里主要是 由于之前的一个 datetime 存储的时间 导致的问题的衍生出来的探究 探究的主要内容为 int 类类型的存储, 浮点类类型的存储, char 类类型的存储, blob 类类型的存储, enum/json/set/bit 类类型的存储 本文主要 的相关内容是 bit/json/enum/set 类类型的相关…

前言

这里主要是 由于之前的一个 datetime 存储的时间 导致的问题的衍生出来的探究 

探究的主要内容为 int 类类型的存储, 浮点类类型的存储, char 类类型的存储, blob 类类型的存储, enum/json/set/bit 类类型的存储 

本文主要 的相关内容是 bit/json/enum/set 类类型的相关数据的存储  

这部分数据 客户端 和 服务器这边的交互 主要是以字符串的形式交互 

服务器这边的存储 相关的编码之后的整形, json 为字符串 
 

 

mysql 中 bit的服务器客户端的数据交互

测试数据表 以及数据如下

CREATE TABLE `tz_test` (`id` int(11) NOT NULL AUTO_INCREMENT,`field1` bit(6) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8INSERT INTO `test`.`tz_test`(`id`, `field1`) VALUES (1, '7');

 

测试脚本如下 

package com.hx.test07;/*** Test06MysqlTimezone** @author Jerry.X.He* @version 1.0* @date 2023/4/24 16:26*/
public class Test06MysqlTimezone {// Test06MysqlTimezonepublic static void main(String[] args) {String url = "jdbc:mysql://10.60.50.16:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&autoReconnectForPools=true&useSSL=false";String username = "root";String password = "root";JdbcTemplate jdbcTemplate = Test14GenExpertSql.getMysqlJdbcTemplate(url, username, password);String sql = " select * from tz_test; ";List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);int x = 0;}}

 

mysql 是将给定的 bit 的数据以 字符串的形式 交互给客户端的

mysql 服务器中对应的类型为 BIT

2cd0f3156ad64e61b44bd67a0998751b.png

 

bit 这边转换, 是直接获取的给定的字段对应的 字节序列

这里是 new byte[] { 0x37 }

83c5ed4a21894aae976038d7ed0982e5.png

 

与客户端的交互, 取出存放的 bits 的数据 

然后 拷贝到 val_buffer 响应给客户端, 这里输出了一个 '7' 

017b10e165dd489d97b409af286d339c.png

 

 

mysql 服务器 bit 的存储

是转换为单字节进行存储的  

477943a6549a41a6b575314d78bdc44c.png

 

 

mysql 中 json 的服务器客户端的数据交互

和上面 bit 相同 

mysql 服务器中对应的类型为 JSON

835ce55ef51f4ce986e7d61b18e679c8.png

 

与客户端的交互, 以 my_charset_bin 反序列化为字符串, 格式化为 json 

然后输出 json 字符串到给定的 buf 

6d7d5da51d3c4596b41034d27cf47271.png

 

 

mysql 服务器 json的存储

将给定的 json 的 字符串以 my_charset_bin 序列化为 二进制, 以二进制的形式存储

以下代码 基于 mysql-8.0.23

6a43fe7b0c6a443e8b1a3e16c7e67ac7.png

e6018e19fd5642e2ad35749a475daa20.png

 

mysql 中 enum的服务器客户端的数据交互

和上面 bit 相同 

mysql 服务器中对应的类型为 STRING? 为什么不是 ENUM 

b44f31187e1845188fa1bea22c801ab8.png

 

与客户端的交互, 获取当前字段 在枚举的索引, 然后 根据配置的选项列表 获取对应的字符串表示

45b75211e57f465d8ea6581f0b66cc80.png

 

 

mysql 服务器 enum 的存储

根据输入的 枚举字符 获取索引, 然后 存储的是具体的索引

0d2e290afbdd4f73a96a6156ff6a6d0d.png

 

假设输入的字段值 不在枚举列表中, 则存放的是 0, 表示的空字符串

0310debc806941f8a4ac3e998e258719.png

数据的存储是根据索引的值域 按不同的长度进行存储

a24938127ef84ec991da044672f576d9.png

 

 

 mysql 中 set 的服务器客户端的数据交互

和上面 bit 相同 

mysql 服务器中对应的类型为 STRING? 为什么不是 SET 

acf9a8e7121742368676ef274b3dcfb8.png

 

与客户端的交互, 从当前字段的值中 按照权重 获取相应的字符串表示, 并用 分隔符 连接起来

d3ed814b700a465eb7a1700212ffcbb6.png

 

mysql 服务器 set 的存储

可以看到 boy, girl, unknown 的索引分别为 0, 1, 2, 权重分别为 1, 2, 4

因此 这里存储的 girl, unknown 为 2 + 4 = 6

数据的存储 和上面 enum 一致, 根据存储的值的取值区间 按不同的长度进行存储 

52b6ba161199459e9d2d631e20b62de8.png

 

对于匹配不上的值 这里的处理是 直接过滤掉

299dcbdd87354717b7238bfb03f8ac31.png

 

 

 

 

http://www.yayakq.cn/news/581918/

相关文章:

  • 化隆县公司网站建设歪歪小站 wordpress
  • 营销案例网站推荐国外WordPress小说主题
  • 电商做网站网络推广营销团队
  • 门户网站什么意思做棋牌网站
  • 看到网站的第一印象wordpress 搬家 密码
  • 做胃镜需那好天津津门网站A网站建设规划书的目的
  • 用老薛主机做网站胶州专业建站
  • 钢材原材料东莞网站建设网站导航如何做半透明渐变
  • 建站服务搭建的页面时wordpress分享到朋友圈
  • 网站开发源代码什么意思如何做网站图标
  • 手机版商城网站都有哪 些功能seo建站需求
  • wordpress 站群系统长沙网站建设湘icp备
  • 做信息网站能挣钱吗营山县城乡规划建设局官方网站
  • 接帮人家做网站的网站网站logo怎么做透明
  • 查企业的网站有哪些燕郊seo
  • 沈阳网站建设索王道下拉wordpress为何弃用php
  • 为什么要做手机网站开发做网站要求电脑配置
  • 响应式网站 像素齐齐哈尔网站建设
  • 一步步教你为网站开发android客户端网站开发和app的区别
  • 公司做网站是做什么账务处理新手学做网站 下载
  • 一流的扬中网站建设网站前台订单功能模块
  • 境外 网站网站沈阳网上房屋备案查询
  • 国外做贸易网站用excel可以做网站
  • 关于网站优化的文章长沙速马科技
  • 优秀的网站建设解决方案北京集团 网站建设
  • 一级a视网站 做爰片杭州网站建设找思创
  • 做好中心网站建设工作定制开发小程序价格
  • 辽宁网站推广住房和城乡建设部网站城市稽查
  • 做律师网站推广优化哪家好深圳东风大厦 网站建设
  • 在本地服务器上建设网站的步骤深圳论坛