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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 实现http长轮询,Long Polling长轮询实现进阶「建议收藏」

    java 实现http长轮询,Long Polling长轮询实现进阶「建议收藏」LongPolling长轮询实现进阶简书涤生。转载请注明原创出处,谢谢!如果读完觉得有收获的话,欢迎点赞加关注。介绍由于LongPolling长轮询详解这篇文章中的code实现较为简单,尤其是服务端处理较为粗暴,有一些同学反馈希望服务端处理阻塞这块内容进行更深入讨论等等,所以这里专门补一篇实现进阶,让大家对长轮询有更加深刻的理解。疑问对上篇文章,同学反馈有两个疑问。服务端实现使用的是同…

    2022年10月10日
    0
  • x86汇编–0.资料汇总[通俗易懂]

    x86汇编–0.资料汇总[通俗易懂]x86汇编–资料汇总1书籍2网站3博客参考1书籍《汇编语言》[王爽]《80×86汇编语言程序设计教程》[杨季文]《MASM程序指南》《Intel指令列表》《TheArtofAssemblyLanguage》2网站汇编网x86汇编小站3博客x86汇编语言笔记(全)(长文警告)王爽《汇编语言》笔记(详细)汇编入门(长文多图,流量慎入)参考1、汇编资料整理2、整理的汇编工具、汇编网站和汇编教学平台总结3、汇编学习软件推荐-汇编金手指.

    2022年10月13日
    0
  • 并发编程之线程中断interrupt

    并发编程之线程中断interrupt

    2021年8月3日
    73
  • 站长工具之在线检测网页错误

    站长工具之在线检测网页错误网页代码测试工具  没有站长可以保证自己的网页代码完全正确没有任何错误,特别是是否符合W3C标准,你可以通过以下测试来检查网站代码是否正确,无论你是asp的还是php的都可以哟。  1.http://www.htmlhelp.com/tools/validator一个很好的工具,能找出网站语法错误的地方,并标注出来,也可选择对网站上单独的每一页进行单页分析。(强烈推荐)

    2022年7月22日
    8
  • wolive在线客服系统_源码屋

    wolive在线客服系统_源码屋wolive是一款为数不多的可自行搭建的php客服系统源码,基于开源高性能workerman框架开发,看了下,功能比较全。想到基于workerman开发,并发性能应该不错。找遍其它客服系统,发现都没有给源码,程序及聊天数据也全部存储在别人服务器上,由于业务涉及到一些账号、订单、买家信息等隐私,担心数据安全问题,所以找到了wolive。由于wolive可以私有化部署,数据库、程序都在自己服务器上,…

    2022年9月21日
    0
  • Idea激活码最新教程2022.1.2版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2022.1.2版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2022 1 2 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2022 1 2 成功激活

    2025年5月25日
    0

发表回复

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

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