SQLite 记录体(record)编码器。
与读取侧 Sqlite3Table.ReadValue 严格对称: 记录体 = varint(headerSize) + 各列 serial type(varint) + 各列数据。
SQLite 记录体(record)编码器。
与读取侧 Sqlite3Table.ReadValue 严格对称: 记录体 = varint(headerSize) + 各列 serial type(varint) + 各列数据。
01 Syntax
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| GetVarIntLength | 1 | 计算 SQLite 变长整数(VarInt)编码之后所占的字节数。 |
| WriteVarInt | 1 | 将变长整数写入流(大端, 每个字节低 7 位为数据, 最高位为后续标志) |
| GetSerialType | 1 | 依据 CLR 值计算其 serial type, 并输出对应的数据字节。 | serial type | 含义 | | --- | --- | | 0 | NULL | | 1..6 | 1/2/3/4/6/8 字节整数 | | 7 | 8 字节 IEEE 浮点数 | | 8 / 9 | 整数 0 / 1 | | 12 + 2n | n 字… |
| GetMinimalIntegerWidth | 1 | 计算存储指定整数所需的最小字节宽度(1/2/3/4/6/8) |
| EncodeRecord | 1 | 将一行数据编码为 SQLite 记录体。 |
03 Members
Int64)计算 SQLite 变长整数(VarInt)编码之后所占的字节数。
Stream, Int64)将变长整数写入流(大端, 每个字节低 7 位为数据, 最高位为后续标志)
Object, Byte())依据 CLR 值计算其 serial type, 并输出对应的数据字节。
| serial type | 含义 | |
|---|---|---|
| 0 | NULL | |
| 1..6 | 1/2/3/4/6/8 字节整数 | |
| 7 | 8 字节 IEEE 浮点数 | |
| 8 / 9 | 整数 0 / 1 | |
| 12 + 2n | n 字节 BLOB | |
| 13 + 2n | n 字节 TEXT |
Int64)计算存储指定整数所需的最小字节宽度(1/2/3/4/6/8)
Object(), Int32)将一行数据编码为 SQLite 记录体。
| Name | Type | Description |
|---|---|---|
values | Object() | 按列顺序排列的值 |
rowIdAliasOrdinal | Int32 | rowid 别名列(INTEGER PRIMARY KEY)的序号, 该列在记录体之中写 NULL, 实际取值由 rowid 承载; 不存在时为 -1。 |