码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • GOLANG 原生SQL 为什么 查询不到字段值


    环境:go 1.19 + mysql

    数据库表:(模拟数据)

    IDCOL1COL2COL3STAT
    11112(null)1 //查不到,查出为 int 默认值 0
    22122230
    33132330

    在对如上内容进行查询时,我使用简单的原生 queryRow 函数,大致如下

    1. //定义接收的结构体
    2. var e myStruct
    3. //执行查询
    4. curr := Dbc.QueryRow("SELECT `col1`,`col2`,`col3`,`stat` FROM `table` WHERE ...", args...)
    5. //查询结果赋值
    6. curr.Scan( &e.col1,&e.col2, &e.col3, &e.stat)

    第一行最后一个字段为 1 其他行大多数是 0 但是从golang查询后,所有的该字段都是0

    在反复确认了 SQL 和代码写的没有问题之后,黔驴技穷的我尝试逐个字段查询,没想到,如果只查询这一个字段的话,是可以查到值的,但是整行查询却查不到。

    想必看到上面的模拟数据,也能看出端倪了,没错,正是之前字段的 NULL 值,导致了这个字段失效。

    由于我的数据比较工整,我的解决方式是先查询 stat 字段,最后查询可能为空的字段,即调整了SQL和赋值顺序,就解决了这个问题。

    暂时先将规律分享出来,至于原理还不清楚,疑点大致包括:

    • 空值会导致接下来一个字段无法查询,还是接下来所有字段都取不到值?
    • 如果多个字段同时可能为空,如何优雅的通过一个 SQL 查询,而不是每次分别查询?
    • 为什么?

    时间紧迫,看到一篇关于 golang sql 空值的文章,先留个链接,有空再分析

    https://blog.csdn.net/qiuchangyong/article/details/108280881

  • 相关阅读:
    自动化测试的度量指标
    微服务平滑迁移上云最佳实践
    【网络编程】网络基础
    黑客入侵机构,导致2万条信息被卖
    mysql在ubuntu上命令行登陆密码不正确
    【SpringCloud】08 分布式事务 seata
    CSAPP题目 3.59
    系分 - 系统规划
    Spring Security(三) —— 加密系统
    格利尔在北交所上市:市值突破9亿元,朱从利夫妇为实控人
  • 原文地址:https://blog.csdn.net/weixin_43074462/article/details/128204121
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号