Go语言技术文章
-
Redis SMOVE 返回 0 时,通常表示源集合中找不到指定成员,Redis 没有执行移动;如果源键类型不正确,则应通过 error 分支处理。本文用 redis-cli 和 Go 客户端拆开这几个边界。420 收藏 -
Redis SREM 的返回值就是本次实际从 Set 中删除的成员数量,不包含不存在的成员。本文用命令行和 Go 客户端说明如何读取这个数字,并区分 0 个命中、键不存在与类型错误。374 收藏 -
MySQL JSON_SCHEMA_VALID() 只能返回 0 或 1。本文用 JSON_SCHEMA_VALIDATION_REPORT() 读取失败原因、JSON Pointer 路径和失败关键字,区分 required 与 type 错误,并给出可接入审计流程的 SQL 写法。230 收藏 -
MySQL 触发器中,OLD 始终只读,NEW 只有在 BEFORE 阶段才能赋值。本文用 INSERT、UPDATE、DELETE 和审计示例说明引用边界,解释 AFTER 中修改 NEW 为什么无效。155 收藏 -
MySQL 同一张表存在多个相同事件和时机的触发器时,默认按创建顺序执行。本文用 FOLLOWS、PRECEDES 固定 BEFORE UPDATE 链路,并给出复核与维护清单。333 收藏 -
从迁移后才暴露的视图错误入手,按时间线、CHECK TABLE、SHOW CREATE VIEW 和底层表结构逐层定位失效依赖,再做反向确认。161 收藏 -
从只读视图部分调用者失败的现象入手,按创建时、引用时和函数执行时拆解权限检查,比较 SQL SECURITY DEFINER 与 INVOKER 的差异,并给出查看定义、选择上下文和防复发的处理顺序。314 收藏 -
MySQL 嵌套可更新视图中的 LOCAL 与 CASCADED 决定写入检查范围。本文用订单视图对比两者在内层无约束、内层已有约束和 UPDATE 场景下的差异,帮助你选择合适的视图写入边界。363 收藏 -
数据库 · MySQL | 1星期前 | MySQL · 表结构 · 备份恢复 · mysqldump · mysql mysqldump 逻辑备份 GIPK generated invisible primary key
说明 mysqldump 如何保留或排除生成不可见主键,并用恢复后的建表语句和列元数据核对结果。464 收藏 -
MySQL 的 CREATE TABLE ... SELECT 会默认忽略源表的 INVISIBLE 列;显式选择后列会进入新表但默认变为可见。本文用 CTAS 示例说明如何选择隐藏列、保留隐藏属性,并检查最终结构。266 收藏 -
MySQL 的 INVISIBLE 列仍然存在,只是不会被 SELECT * 或表别名通配展开。本文用最小示例对比通配查询、显式列名和元数据排查方法,说明如何兼容旧接口并稳定读取隐藏辅助列。213 收藏 -
MySQL 批量导入遇到 CHECK 约束不应只看导入是否结束。本文用 LOAD DATA IGNORE 保留合法行,说明如何紧接着读取 SHOW COUNT(*) WARNINGS 与 SHOW WARNINGS,并把违规信息交给审计流程。170 收藏 -
MySQL CHECK 约束可以先用 NOT ENFORCED 保留定义,再在清理存量脏数据后切换为 ENFORCED。本文用一张订单表串起状态识别、违规扫描、修复隔离和 ALTER CHECK 切换的完整迁移路径。395 收藏 -
MySQL CHECK 约束遇到 NULL 时可能返回 UNKNOWN,而 UNKNOWN 与 TRUE 一样不会触发 CHECK 失败。本文用字段约束对照说明三值逻辑,并给出 NOT NULL 与 CHECK 的显式非空写法。265 收藏 -
Redis 向量检索变慢时,不要只看总耗时。本文用 FT.PROFILE 拆开 VECTOR 迭代器、过滤模式、距离计算和结果处理器,给出可复现的排查顺序与调参边界。212 收藏