C#中如何为参数SqlDbType.Decimal指定精度与小数位数

C#中如何为参数SqlDbType.Decimal指定精度与小数位数 在.net中操作数据库的时候,我们更多的是推荐使用参数化来传值,但这其中就会产生一些疑惑,比如使用Decimal时如何保持与数据库中一样的精度与小数位数呢? 利用参数的Precision与Scale的属性即可,示例如下: ///<summary> ///更新一条数据 ///</summary> publicDictionaryEntryUpdate…

大家好,又见面了,我是你们的朋友全栈君。

在.net中操作数据库的时候,我们更多的是推荐使用参数化来传值,但这其中就会产生一些疑惑,比如使用Decimal时如何保持与数据库中一样的精度与小数位数呢?

利用参数的Precision与Scale的属性即可,示例如下:

///<summary >
///更新一条数据
///</summary >
public DictionaryEntry Update_DictionaryEntry(SDERP.Model.storehouse.Storage_GoodsUnitExchange model)
{

……
SqlParameter[] parameters = {

new SqlParameter(“@ID”, SqlDbType.Int,4),
new SqlParameter(“@GID”, SqlDbType.VarChar,50),
new SqlParameter(“@ChangeRate”, SqlDbType.Decimal,13)
};
parameters[0].Value = model.ID;
parameters[1].Value = model.GID;
parameters[2].Value = model.ChangeRate;
parameters[2].Precision = 28;
parameters[2].Scale = 10;

return new DictionaryEntry(strSql, parameters);
}

这样,我们就指定了”@ChangeRate”参数的精度为28,最大小数位数为10。

注意:其实在.net中,如果没有特殊的情况,我们并不需要为参数设置精度与小数位数,在默认的情况下,参数会如实的传递用户的值,并不会像数据库一样如果不设置小数位数,那么小数位数就是0。而且如果在程序中设置了精度与小数位数,那么在后期的程序的修改中也会带来很大的工作量,试想一下,如果我们在此 处不设置,那么以后要改变decimal的小数位数,只要改掉数据库中对应的字段长度就行了,而程序不用做任何改更。而如果我们在程序中也设置了小数位 数,那么在改了数据库同时还得修改程序。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162192.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm怎么装第三方库jieba_pycharm安装配置教程

    pycharm怎么装第三方库jieba_pycharm安装配置教程一、测试环境测试机型:window10pycharm版本:2020.1.1专业版二、安装步骤1.打开pycharm,点击最上方菜单项中的File,并找到Setings如图:2.点击Setings,在Project中找到自己的项目(1),随后右边的显示框中会显示如图页面,点击ProjectInterpreter(2):3.点击之后就会出现如下图页面,中间表格中的Package表示你已经添加的包,Version表示当前版本,latestversion表示最新的版本。添加新.

    2022年8月25日
    3
  • Modelsim SE 下载安装、注册详细教程「建议收藏」

    目录一、ModelsimSE下载及安装参考资料一、ModelsimSE下载及安装百度网盘下载链接:https://pan.baidu.com/s/1a9d-bq9RZmWrRV542X4IEA——提取码:ifte下载完成后,解压缩win64版的modelsim压缩包。双击可执行文件运行。点击【Next】。选择安装路径,然后点击【Next】。点击【Agree】。正在安装…弹窗添加环境变量,点击【允许】,这样就可以从DOS提示符执行Modelsim了。

    2022年4月10日
    488
  • STM32逆变器电源设计方案,基于STM32F103控制器[通俗易懂]

    STM32逆变器电源设计方案,基于STM32F103控制器[通俗易懂]STM32逆变器电源设计方案,基于STM32F103控制器:★原理图和PCB(其中原理图为PDF文档)★逆变器电源设计说明★逆变器电源源代码(STM32C8T6,实现过压,欠压,过功率,和短路保护功能)★SPWM调制生成工具id=638460642538&…

    2022年6月11日
    39
  • 微信小程序——图片识别

    微信小程序——图片识别我的微信小程序期末大作业——基于百度大脑API的图片识别小程序具体实现了动物识别、植物识别、车辆识别三个功能实验源码已经放到了我的GitHub,欢迎测试修改下面给大家分享该项目的实验报告????目录1概述1.1课程大作业目的与要求1.2课程大作业简介2设计思路2.1图片识别API2.2微信小程序UI框架3设计方案4设计过程4.1百度开放平台注册4.2获取asscee_…

    2022年6月29日
    91
  • 奔图m7160dw驱动_奔图打印机m7100dn

    奔图m7160dw驱动_奔图打印机m7100dn奔图M7100dW打印机驱动是专门为奔图旗下的M7100dW型号打印机打造的驱动程序。它能够为你解决打印机常见的无法扫描、无法识别等问题。他是连接打印机与电脑的桥梁,让你更好的操作这款的打印机。【打印机特色】1、操作便捷,乐在其中ECOSYSP2135dn外观小巧,空间适应度很高,可以更好地满足用户办公空间布置的需要。而且外形美观,放置在办公桌上能够与办公家具很好地融合在一起,营造出和谐的办公室…

    2022年8月30日
    3
  • stat函数的用法_Str函数

    stat函数的用法_Str函数stat和lstat是兄弟函数,都是用于获取文件信息如果文件不是链接文件,则二者没有区别,如果是链接文件有如下区别:stat:获取链接文件的信息时,具有穿透能力,直接穿越链接文件,获取所被链接文件的信息。lstat:获取链接文件的信息,无穿透能力函数原型intstat(constchar*pathname,structstat*buf);intlstat(constcha…

    2022年8月21日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号