学习go语言的第3天,对于go语言菜鸟的我来说,必须得记录一下学习的过程,以便后续查阅,同时希望这篇文章能给同样是菜鸟的你带来帮助(所有操作都是在Ubuntu16.04操作系统)。首先,安装mysql数据库,这个在上一篇文章有介绍过,这里就不再叙述。其次,安装 go 语言的mysql驱动go get"github.com/go-sql-driv
转载 2023-07-11 23:40:14
104阅读
1.简单动态字符串(simple dynamic string, SDS)  定义:  struct sdshdr {    int len;//记录buf中使用的字节数量    int free;//记录buf中未使用的字节数量    char buf[];//字节数组,用于保存字符串    //buf字节数组以’\0’结束,但是’\0’不计算在l
转载 2023-11-26 16:35:10
73阅读
目录一. InnoDB 数据记录存储结构二. InnoDB索引页结构三. 简单总结 一. InnoDB 数据记录存储结构在使用InnoDB作为存储引擎时,最小的存储单位为页,一页大小为16384字节也就是16kb, 其中有132个字节用来保存元数据相关信息,27个字节用来保存当前记录的附加信息, 一条记录的存储结构为:变长字段列表中保存了数据类型为可变超度的例如Varchar,字段的实际长度Nu
转载 2023-11-09 09:55:36
124阅读
随着企业数据化进程的加快,Pyhton与“wind底层数据库”的结合变得越来越重要。本文将详细探讨如何高效解决与“wind底层数据库”有关的问题。以下内容包括背景描述、技术原理、架构解析、源码分析、案例分析和扩展讨论,目的是为读者提供一个全面的认识和实践指南。 通过这个流程,我们能够更好地理解wind底层数据库和Python如何协作,为金融数据处理提供强有力的支持。 ```mermaid fl
原创 7月前
87阅读
事物与数据库底层数据在事物进行过程中,未结束之前,DML语句是不会更改底层数据,只是将历史操作记录一下,在内存中完成记录。只有在事物结束的时候,而且是成功的结束的时候,才会修改底层硬盘文件中的数据...
原创 2023-03-09 09:57:18
86阅读
前言:最近学习了数据库这块的知识,看了一些视频,现在把学到的一些知识点整理出来,也为自己做个笔记。索引是什么?工作中,在数据库查询中,可能有些人觉得只要加了索引查询速度就很快,其实并不是这样子的。当然索引到底是什么东西呢?索引:索引是帮助MySQL高效获取数据的排好序的数据结构,该数据结构是存储在文件中的。上面的是一个对索引的一个解释,我们可以看出索引其实是一个数据结构。效果就是高效率获取结果。当
文章目录前言索引结构及查找算法不适合做MySql的数据结构及其原因一、BTree和B+Tree的引出1.1 BTree数据结构2.2 B+Tree数据结构二、计算m阶,即B+Tree该取多少合适总结 前言索引结构及查找算法一个sql语句在mysql里究竟是如何运行的呢?又是怎么去查找的呢?其中就涉及到数据库(存储数据)以及查找算法。先来看一下几种查找算法;目录查找:类似索引遍历:暴力查找二分:B
字符串String字符串的底层表示type StringHeader struct { Data uintptr Len int }Data 指向底层的字符数组Len 表示字符串的长度Go语言中,所有的文件都采用UTF-8编码,字符常量也是用的是UTF-8字符编码集。UTF-8 是可变长的编码方式,比如ASCII码 就用一个字节表示,中文就是3个字节表示。我记得ASCII的UTF-8编码是最高
转载 2023-07-18 12:21:22
56阅读
数据库的访问性能是很关键的问题,所以了解其底层实现,对于如何高效的使用接口函数非常有帮助。 SQLiteDatabase    封装create、insert、delete、query、open、close这些数据库常用接口。SQLiteDatabase对象创建时就会调用jni dbopen去打开数据库文件,dbclose关闭数据库文件,打开与关闭时都会生成
转载 2023-09-08 10:59:49
105阅读
相关基本概念及DDL语句在这里就不赘述了,本篇文章主要聊一聊mysql底层的东西。一、架构mysql的架构,主要分为server层和引擎层,大体分布如下: mysql架构 MySQL基架大致包括如下几大模块组件:(1)MySQL向外提供的交互接口(Connectors) (2)管理服务组件和工具组件(Management Service &
转载 2023-08-30 15:03:26
153阅读
目录一、SQLite数据库二、SQLiteOpenHelper和SQLiteDatabase2.1 SQLiteOpenHelper2.2 SQLiteDatabase三、常见数据库使用介绍3.1 创建数据库3.2 插入数据3.3 修改数据(升级数据库)3.4 删除数据3.5 查询数据3.6 关闭数据库3.7 删除数据库 一、SQLite数据库SQLite是Android内置的一个小型、关系型、
转载 2024-08-23 10:17:33
217阅读
这篇文章主要是介绍mysql底层数据结构以及算法,主要包括索引数据结构红黑树、Hash、B树、B+树;索引是怎么支撑千万级表的快速查找;面试常见问B+树索引面试题解析;联合索引底层数据结构是怎样的等问题。工作中经常遇到慢查询的问题或有时候DBA给我们发了一条慢查询SQL让我们去优化,我们第一时间想到的优化方法就是加索引,看看查询条件是不是走了索引以及啥时候走的索引,看是不是走了索引可以用exp
转载 2023-08-04 14:36:24
442阅读
MySql的存储结构MySQL作为一个关系型数据库,最核心也是最基本的一个功能就是存储数据,而数据的存储最终都是存储在磁盘文件上的,不过MySQL并不会像Java中那样把一个对象序列化之后直接存储到磁盘上去,因为这样的话后续就不太方便来查找数据了,所以MySQL在一行数据的存储上做了一定的设计。我们平时是以记录为单位来向表中插入数据的,我们在Navicat等客户端看到是一个表格,里面有一行一行的记
转载 2023-09-30 22:45:15
82阅读
## 理解 MySQL 数据库 InnoDB 底层数据结构的实用指南 MySQL 是一种广泛使用的开源关系型数据库系统,其存储引擎 InnoDB 成为默认选择,因其支持事务、行级锁定和外键等特性。理解 InnoDB 的底层数据结构对于开发者优化数据库性能和设计高效的应用程序至关重要。在本文中,我们将逐步了解 InnoDB 的底层数据结构,并提供相关示例代码。 ### 流程概述 以下是学习 I
原创 11月前
40阅读
# MSSQL 数据库 WinHex 底层数据分析 ## 1. 引言 随着大数据时代的到来,数据库成为了应用开发中不可或缺的一部分。MSSQL(Microsoft SQL Server)是微软开发的一种关系型数据库管理系统,被广泛应用于企业级应用开发中。WinHex是一款强大的十六进制编辑器,用于对二进制数据进行分析和编辑。本文将介绍如何使用WinHex进行MSSQL数据库底层数据分析,以及
原创 2023-09-12 09:07:53
123阅读
SQLite是android中集成的一个轻量级的数据库,该数据库支持绝大部分SQL92语法SQLiteDatabase代表一个数据库底层就是一个数据库文件),一旦应用程序获得了代表指定数据库的SQLiteDatabase对象,就可以使用SQLiteDatabase对象来管理、操作数据库了。SQLiteDatabase的方法:1、static SQLiteDatabase openDatabase
转载 2023-10-09 11:57:53
117阅读
为什么要在应用程序中使用数据库数据库最主要的用途就是作为数据的存储容器,另外,由于可以很方便的将应用程序中的数据结构(比如C语言中的结构体)转化成数据库的表,这样我们就可以通过操作数据库来替代写一堆算法来操作数据结构。android系统集成了一个轻量级的关系型数据库:SQLite,从本质上讲,SQLite数据库底层其实就是一个数据库文件,当我们打开SQLite数据库时,其实只是打开与之对应的数
转载 2023-12-17 19:34:28
49阅读
Go基础之--操作Mysql(一)   关于标准database/sqldatabase/sql是golang的标准之一,它提供了一系列接口方法,用于访问关系数据库。它并不会提供数据库特有的方法,那些特有的方法交给数据库驱动去实现。database/sql提供了一些type。这些类型对掌握它的用法非常重要。DB数据库对象。 sql.DB类型代表了数据库。和其他语言
转载 2023-08-12 14:06:44
574阅读
应该说,数据库编程是任何编程语言都有提供的基础功能模块,无论是编程语言内置的支持,还是通过外部来实现;当然啦,不同编程语言提供的数据库编程API是不尽相同的,而且需要支持的数据库也是多种多样,如常用的MySQL,SQLServer,Postgres等数据库。抛开其他编程语言不谈,在这篇文章中,我们就来聊一聊Go语言数据库编程的那些事,了解如何使用Go语言提供的标准,编写通用的操作数据库的代码。
转载 2024-01-11 19:11:21
57阅读
所学越多,所知越少。一、介绍数据库就是存储数据的一个地方 有几种不同的存储方式 存储格式: 底层是以页存储的 默认 16kb 所说的b + 树 中间节点一页可以存储很多 叶子节点 一页可以存储就要看数据多大了 重点: 底层 已 b+ 树的格式存储数据页 (理解:已b+树的方式找到数据页) 在页上面存储 已链表链接的行数据(理解:行头中变长列值 的768 个字节作为索引 多的就放在别的里面) 分为数
转载 2023-10-18 13:51:35
142阅读
  • 1
  • 2
  • 3
  • 4
  • 5