云鹊BLOG云鹊BLOG云鹊BLOG
  • 首页

云鹊BLOG云鹊BLOG云鹊BLOG

当前位置:首页关于 SQLite 的文章
SQLite 授权回调的 IGNORE:列值被隐藏了,为什么带条件的整行也不见了

SQLite 授权回调的 IGNORE:列值被隐藏了,为什么带条件的整行也不见了

一个查询工具想保留记录编号,但不返回某个字段,于是在SQLite授权回调里对该字段返回SQLITE_IGNORE。直接SELECT时字段变成空值,看起来符合预期;再加一个字段大于零的条件,整条记录却消失了。这个返回值...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 4 阅读
Python sqlite3.blobopen:可以定位写字节,为什么写到末尾却不能自动扩容

Python sqlite3.blobopen:可以定位写字节,为什么写到末尾却不能自动扩容

sqlite3.blobopen返回的对象支持read、write和seek,很容易被当成会自动长大的普通文件。实际使用时,在末尾追加一个字节却得到ValueError,原因是这个句柄只能访问已有BLOB的固定长度。...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 3 阅读
Python sqlite3 executescript:脚本后来报错,为什么 with 前面写入的记录仍然留下

Python sqlite3 executescript:脚本后来报错,为什么 with 前面写入的记录仍然留下

导入程序先执行一条INSERT,再把几条SQL交给executescript。外面已经套with db,脚本最后也报错,查询却发现前两条记录都在。不能只看缩进判断事务范围:执行入口本身可能先提交已有事务。本例在Lin...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 3 阅读
SQLite TEMP 同名表:主表没有改,为什么 SELECT 却读到另一份内容

SQLite TEMP 同名表:主表没有改,为什么 SELECT 却读到另一份内容

调试脚本建立了一张叫item的临时表,后面原封不动执行SELECT label FROM item,结果突然变成另一份数据。主库中的item可能完全没有改变,只是未带数据库名的表引用先找到了temp里的同名对象。查询...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 3 阅读
SQLite 同条 UPDATE 的取值时机:x 已经加一,为什么 y 仍然拿到旧的 x

SQLite 同条 UPDATE 的取值时机:x 已经加一,为什么 y 仍然拿到旧的 x

想让x增加一,再把新x写进y,把两项放进同一条UPDATE的SET列表后,却发现y得到旧x。SQLite针对被更新行的列引用,会先求出右侧标量表达式,再实施赋值。SET中从左到右的书写位置,不能当作逐行执行的脚本步骤...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 3 阅读
SQLite ntile 分桶:分数相同也会跨组,多出的行又先分给谁

SQLite ntile 分桶:分数相同也会跨组,多出的行又先分给谁

把任务按分数排成三批时,很容易把 ntile(3) 理解成“相同分数一定放在一组”。实际上,它的目标是按窗口顺序让各桶的行数尽量均匀。相同分值碰上桶边界,可以被拆开;总行数不能整除时,靠前的桶会多分到一行。下面用八条...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 2 阅读
SQLite json_extract 的返回类型:只取一个字段是数字,多加一条路径为什么变成文本

SQLite json_extract 的返回类型:只取一个字段是数字,多加一条路径为什么变成文本

某段查询原本只取 quantity,应用收到数字 7;后来为了顺便取 label,给 json_extract 增加一条路径,返回值却成了文本。SQLite 的这个函数并不固定返回一种“JSON对象”:路径个数与被取...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 2 阅读
SQLite STRICT 表的 ANY:同样写 ANY,为什么一张表保住 0007,另一张只剩 7

SQLite STRICT 表的 ANY:同样写 ANY,为什么一张表保住 0007,另一张只剩 7

需要保留导入值的原始表示,于是把列声明为 ANY,带前导零的字符串却变成整数。SQLite中的ANY要结合表选项来看:普通表会尝试把看起来像数字的文本转成数值,STRICT表的ANY则保留接收到的值与存储类型。下面在...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 2 阅读
SQLite group_concat 的顺序:查询末尾已经排序,拼接内容为何还可能乱

SQLite group_concat 的顺序:查询末尾已经排序,拼接内容为何还可能乱

把几个工序拼成一段路径,查询最外层写了 ORDER BY,字符串里的工序却未必按照它排列。最外层排序安排的是已经产生的结果行;要规定 group_concat 逐个接收值的次序,应把 ORDER BY 写在聚合函数最...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 2 阅读
SQLite lag 的窗口边界:frame 只剩当前行,为什么仍然能读到上一行

SQLite lag 的窗口边界:frame 只剩当前行,为什么仍然能读到上一行

为了让查询只处理当前记录,把窗口框架写成 CURRENT ROW 到 CURRENT ROW,lag 仍然返回上一条内容。这里需要先看函数本身的取行规则:SQLite 的 lag 按分区中的相对位置取值,忽略fram...

yunqueblogyunqueblog/ 技术教程/ 2026-10-02/ 2 阅读
  • 首页
  • 上一页
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 下一页
  • 末页
  • 共 7 页
点击查看更多
Copyright2020后台修改文字. 基于Z-BlogPHP搭建