首页 > 数据库 >一个SQLSugar字典操作使用问题

一个SQLSugar字典操作使用问题

时间:2024-10-22 11:00:36浏览次数:8  
标签:CI 列名 Add 操作 dt 数据库 SQLSugar 字典

问题

在页面进行删除对象操作时报错,列名无效:

列名 'IsDeleted' 无效。
列名 'CreateTime' 无效。
列名 'Name' 无效。

基本信息

数据库:SqlServer Express 16

ORM框架:SQLSugar

分析

  1. 日志中打印了sql语句,直接复制sql语句到SSMS中,同样提示列名无效,可以确定列名有问题;
  2. 公司的产品框架基于SQLSugar做了一层封装,通过反编译软件查看代码,使用SQLSugar字典方式更新数据库,如下:
Dictionary<string, object> dt = new Dictionary<string, object>();
dt.Add("IsDeleted", true);
dt.Add("CreateTime", DateTime.Now);
dt.Add("Name", this.currentUserName);
result = db.Updateable(dt).AS(this.TableName).Where(" ID = '" + key + "'", null).ExecuteCommand();

数据库中列名全部为大写,因此直接反编译修改模块,改成大写,替换后再次测试,问题解决:

dt.Add("ISDELETED", true);
dt.Add("CREATETIME", DateTime.Now);
dt.Add("NAME", this.currentUserName);
  1. 但使用相同版本产品框架的其它项目,测试没有该问题,因此怀疑数据库配置有差异:

如图,报错的项目数据库排序规则为CS,未报错的项目排序规则为CI。CI/CS指 是否区分大小写,CI不区分,CS区分。

解决

方法一:注意数据库的排序规则配置,使用CI;

方法二:调整框架代码,区分大小写,与数据库列名严格一致;

标签:CI,列名,Add,操作,dt,数据库,SQLSugar,字典
From: https://www.cnblogs.com/louzixl/p/18492159

相关文章

  • shell实例手册-文件操作
    一、文件常用操作   touchfile             #创建空白文件   rm-rf目录名          #不提示删除非空目录(-r:递归删除-f强制)   dos2unix               #windows文本转linux文本    unix2dos    ......
  • 在Windows操作系统中,配置系统服务和检查服务的状态是确保系统正常运行的关键步骤。以
    在Windows操作系统中,配置系统服务和检查服务的状态是确保系统正常运行的关键步骤。以下是关于系统服务、PrintSpooler服务的工作状态、身份增强校验失败和Guest账户未激活的详细说明:1.系统服务概述Windows系统服务是后台运行的程序,用于执行系统管理任务或支持应用程序的运行。......
  • 校招基础知识详解——计算机操作系统(内存管理)
    文章目录虚拟内存分页系统地址映射页面置换算法最佳页面置换算法(OPT,Optimalreplacementalgorithm)先进先出置换算法(FIFO,FirstInFirstOut)最近最久未使用的置换算法(LRU,LeastRecentlyUsed)最不常用算法最近未使用(NRU,NotRecentlyUsed)第二次机会算法时钟页面......
  • Linux 操作系统 dpkg-trigger 命令介绍和使用案例
    Linux操作系统dpkg-trigger命令介绍和使用案例dpkg-trigger是Debian和基于Debian的Linux发行版(如Ubuntu)中的一个命令,用于管理软件包的触发器。触发器是一种机制,允许软件包在安装、卸载或升级时执行特定操作。命令概述dpkg-trigger命令用于通知系统某个事件的发......
  • linux 操作系统下 dpkg-statoverride命令介绍和使用案例
    dpkg-statoverride是一个用于管理Debian和基于Debian的Linux发行版(如Ubuntu)中文件的所有权和权限的命令。它允许用户在软件包安装时覆盖文件的默认所有权和权限设置命令概述dpkg-statoverride命令提供了三种基本功能:添加覆盖删除覆盖列出当前的覆盖命令语法bash......
  • 【C语言】文件操作(2)(文件缓冲区和随机读取函数)
    文章目录一、文件的随机读取函数1.fseek函数2.ftell函数3.rewind函数二、文件读取结束的判断1.被错误使用的feof2.判断文件读取结束的方法3.判断文件结束的原因feofferror判断文件读取结束原因示例三、文件缓冲区一、文件的随机读取函数  在上一篇的文章中,我......
  • Mongodb(4)索引,查看执行计划,聚合操作aggregate,表关联查询,批量插入测试数据,执行计
    创建索引,支持:单键索引、复合索引,唯一索引创建索引后台执行db.books.createIndex({open:1,close:1},{background:true})对内嵌文档字段创建索引:db.books.createIndex({"author.name":1})创建唯一索引db.books.createIndex({title:1},{unique:true})在包含嵌套对象的......
  • Steam游戏共享全攻略:可共享游戏范围与合规操作指南
    在Steam这个全球知名的游戏平台上,游戏共享功能为玩家提供了一种便捷的方式,使他们能够与家人或朋友共享自己的游戏库,而无需每个人都购买相同的游戏。然而,这一功能并非没有限制和规定。本文将详细介绍Steam游戏共享的可共享游戏范围以及合规操作指南,帮助玩家更好地理解和使用这一......
  • 【Linux从入门到精通四】基础命令详解:cd、pwd、mkdir、文件操作与管道符
    个人名片......
  • 通义灵码操作指南——安装和登陆指南
    点击链接,立即下载通义灵码插件:https://tongyi.aliyun.com/lingma/兼容IDE和系统本文介绍通义灵码IDE插件兼容的IDE、操作系统等。JetBrainsIDEsIDE版本:IntelliJIDEA、PyCharm、GoLand、WebStorm、AndroidStudio等2020.3及以上操作系统:Windows7及以上、macOS、......