首页 > 数据库 >C# SqlParameter设置值为0数据库实际为null的原因

C# SqlParameter设置值为0数据库实际为null的原因

时间:2025-01-23 15:21:42浏览次数:1  
标签:MySqlParameter parameters C# 值为 SqlParameter new null order

以前我也发现了这个问题,当时 我是想通过SqlParameter插入一个int数据到数据库,类似下面这样

 

1   MySqlParameter[] parameters = new MySqlParameter[]
2   {
3               new MySqlParameter("@order",0)
4   }

 

但是执行后,会发现数据库显示为null,当时没去细究原因,通过声明了一个变量来解决了。

1 int order = 0; 
2 
3 MySqlParameter[] parameters = new MySqlParameter[]
4   {
5               new MySqlParameter("@order",order)
6   }

 

今天又遇到了类似的问题

 后面查了一下资料,发现平常我们在使用SqlParameter时,使用最多的是通过下面的构造函数去创建

1 public SqlParameter (string parameterName, object value);

 

而第二个参数是object类型,所以当系统无法推断类型时,会将0设置成null,这也就是为什么在前面的解决办法中,声明一个变量就可以解决。

 

既然 知道了原因,我们通过下面的方式构造,就可以解决问题。

1  MySqlParameter[] parameters = new MySqlParameter[]
2  {
3              new MySqlParameter("@order",MySqlDbType.Int32){ Value = 0}
4  };

 

[in, optional] lpWindowName

标签:MySqlParameter,parameters,C#,值为,SqlParameter,new,null,order
From: https://www.cnblogs.com/zhaotianff/p/18687830

相关文章

  • centos7 创建软 raid0
    安装mdadmyum-yinstallmdadm查看可用磁盘lsblkNAMEMAJ:MINRMSIZEROTYPEMOUNTPOINTSsda8:00447.1G0disk├─sda18:10200M0part/boot/efi├─sda28:20500M0part/boot└......
  • Docker搭建PHP & Nginx & ThinkPHP8.0框架
    创建容器:cd工作目录#创建项目文件mkdirtp8cdtp8#初始化dockerdockerinit#交互:start#选择语言&服务器配置(选择php,回车即可)?Whatapplicationplatformdoesyourprojectuse?PHPwithApache#语言版本(回车为docker的默认php版本,这里为指定版本8.1)?......
  • CTFshow web入门 web69-77+118
    web69+70c=var_export(scandir('/'));查看目录,c=include('/flag.txt');得到flagweb71查看附件源码,在执行完命令后,会将页面字符替换为?,只需执行完命令立刻退出即可c=var_export(scandir('/'));exit();查看目录,c=include('/flag.txt');exit();得到flag,或者使用die();web......
  • c++迷宫问题(migong)
    今天的题目叫“迷宫问题(migong)”,是“DFS深度优先搜索递归”一类的。题目描述设有一个N*N(2<=N<10)方格的迷宫,入口和出口分别在左上角和右上角。迷宫格子中分别放0和1,0表示可通,1表示不能,入口和出口处肯定是0。迷宫走的规则如下所示:即从某点开始,有八个方向可走,前进方格中数......
  • c++瓷砖
    今天的题目叫“瓷砖”,是“DFS深度优先搜索递归”一类的。题目描述在一个w×h的矩形广场上,每一块1x1的地面都铺设了红色或黑色的瓷砖。小谢同学站在某一块黑色的瓷砖上,他可以从此处出发,移动到上、下、左、右四个相邻的且是黑色的瓷砖上。现在他想知道,通过重复上述移动所能......
  • 关于此题[ABC343F] Second Largest Query 线段树合并类问题的一些总结
    传送门题目大意:给定序列,每次操作可以单点修改以及询问每个区间内严格次大值出现次数。此类区间合并的线段树之前也做过,但是都没有一个固定的写法,导致调了很久都过不了,感觉上是写丑了。对于一个节点要维护多个信息,我们可以用结构体来实现,并且pushup操作,即左右儿子两个区间合并操......
  • ACM寒假集训第一讲博客1
    num1:code:该题使用C语言include<stdio.h>intmain(void){intn;scanf("%d",&n);printf("L");for(inti=0;i<n;i++){printf("o");}printf("ng");}解题思路:直接打印出L与ng,其次使用循环输出n个o即可。num2:code:C++语言includeinc......
  • 【基础】愤怒的奶牛 USACO c++
    描述FarmerJohn建造了一个有N(2<=N<=100,000)个隔间的牛棚,这些隔间分布在一条直线上,坐标是x1,…,xN(0<=xi<=1,000,000,000)。他的C(2<=C<=N)头牛不满于隔间的位置分布,它们为牛棚里其他的牛的存在而愤怒。为了防止牛之间的互相打斗,FarmerJohn想把这些牛安置在指定的隔间,所......
  • 测试工程师效率提升系列第二篇:测试用例管理自动化——从 Excel 到结构化数据
    在测试工程师的日常工作中,测试用例管理是一个重要环节。很多团队仍然依赖于Excel表格来管理测试用例,包含用例描述、步骤、预期结果等内容。然而,这种方式存在以下痛点:难以复用:Excel文件往往是静态的,无法直接与自动化脚本关联。易出错:人工更新用例容易遗漏或引入错误,特......
  • 测试自我救赎第三式:彻底搞定接口测试和 Mock 数据,效率瞬间翻倍!
    在测试工程师的日常工作中,接口测试是不可或缺的一部分。然而,接口测试往往伴随着以下痛点:环境依赖:后端服务不稳定或无法访问时,接口测试无法正常进行。重复验证:需要频繁调用接口并对比返回的数据,耗费时间且容易出错。依赖数据难以构造:接口依赖的上下游数据复杂,难以快速准备测......