在C#项目中需要用double类型操作MSSQL float类型数据(附C#数据类型和SQL数据类型对照)

C#操作SQL Float类型,数据会多很多小数,原来是C#的float和sql的float类型不一致。以下是数据库中与C#中的数据类型对照。

        /// <summary>
        /// 数据库中与C#中的数据类型对照
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        private string ChangeToCSharpType(string type)
        {
            string reval = string.Empty;
            switch (type.ToLower())
            {
                case "int":
                    reval = "Int32";
                    break;
                case "text":
                    reval = "String";
                    break;
                case "bigint":
                    reval = "Int64";
                    break;
                case "binary":
                    reval = "System.Byte[]";
                    break;
                case "bit":
                    reval = "Boolean";
                    break;
                case "char":
                    reval = "String";
                    break;
                case "datetime":
                    reval = "System.DateTime";
                    break;
                case "decimal":
                    reval = "System.Decimal";
                    break;
                case "float":
                    reval = "System.Double";
                    break;
                case "image":
                    reval = "System.Byte[]";
                    break;
                case "money":
                    reval = "System.Decimal";
                    break;
                case "nchar":
                    reval = "String";
                    break;
                case "ntext":
                    reval = "String";
                    break;
                case "numeric":
                    reval = "System.Decimal";
                    break;
                case "nvarchar":
                    reval = "String";
                    break;
                case "real":
                    reval = "System.Single";
                    break;
                case "smalldatetime":
                    reval = "System.DateTime";
                    break;
                case "smallint":
                    reval = "Int16";
                    break;
                case "smallmoney":
                    reval = "System.Decimal";
                    break;
                case "timestamp":
                    reval = "System.DateTime";
                    break;
                case "tinyint":
                    reval = "System.Byte";
                    break;
                case "uniqueidentifier":
                    reval = "System.Guid";
                    break;
                case "varbinary":
                    reval = "System.Byte[]";
                    break;
                case "varchar":
                    reval = "String";
                    break;
                case "Variant":
                    reval = "Object";
                    break;
                default:
                    reval = "String";
                    break;
            }
            return reval;
        }
数据库中与C#中的数据类型对照
时间: 2024-10-25 23:18:35

在C#项目中需要用double类型操作MSSQL float类型数据(附C#数据类型和SQL数据类型对照)的相关文章

为什么Java中Long类型的比float类型的范围小?

为什么Long类型的比float类型的范围小? 2015-09-15 22:36 680人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经博主允许不得转载. 作为一个常识,我们都知道浮点型在内存中占用的是4个字节的空间,而long型占用的是8个字节的空间.可是为什么今天在写Java程序时犯了一个错误,最后才知道4个字节 的float型的最大值会大于long型的最大值.发现了这个错误我很吃惊,于是查资料才知道原因. 我们都知道,float类型的范围是:一3.403E38~3.403

DotNet项目中的一些常用验证操作

在项目中需要对用户输入的信息,以及一些方法生成的结果进行验证,一般在项目中较多的采用js插件或js来进行有关信息的校验,但是从项目安全性的角度进行考虑,可对系统进行js注入. 如果在后台对用户输入的信息进行验证会相对的安全,在出现信息验证不合法时,可以直接在程序中抛出异常,终止程序的运行. 现在提供几种较为常用的验证方法,可以减少在项目中开发时间和错误性: 1.判断域名:         /// <summary>         /// 普通的域名         /// </summ

项目中实现虚拟点击操作

一.HTML中的data属性    使用data属性来嵌入自定义的数据   data-*="  " 在项目中有一个问题,经常需要获得当前行或者一个位置的值,比如我项目中需要在后台php文件中foreach循环输出一行<tr>,然后将这个<tr>传到前台页面中, foreach ($res as $k => $v) { $str .= "<tr> <td>{$v['0']}</td> <td><

【前端笔记】项目中运用到的前端操作

1.对于checkbox的操作: 在信息列表中,我们通常希望按住一个按钮就全部选中所有按钮,这个需要结合checkbox的checked事件和JS函数作处理 <html> <head> <script type="text/javascript"> function checkAll(obj){ var check = document.getElementsByName("checkbox"); if(obj.checked =

项目中遇到的[数据库并发]操作问题,大牛来指导下!!!

使用Jmeter测试应用的浏览数的时候,起10个线程,同时执行浏览应用的API,本来预期应用的浏览次数增加10,结果始终达不到10.猜测这可能是个典型的并发案例.jmeter操作截图如下: 于是我尝试在程序中打日志,确定一下我的猜想: 日志表明,总有几个线程是在同一时刻操作数据库的,造成浏览次数遗漏! 请问,这种情况,我应该怎么做并发控制?我用的mysql数据库.

grails项目中(DB的相关操作)

save:保存Domain对象的数据到对应的库表中(可能是insert也可能是update) findBy: 动态方法,查找并返回第一条记录,方法名可以变化 eg:findByName("Tom") 会返回所有name属性为Tom的对象(只返回第一条记录) findByNameAndPassword("Tom","Mot")会返回所有name属性为"Tom"并且password属性为"mot"的对象 fin

java中,Date数据类型和JSONObject数据类型之间的转换

import java.text.SimpleDateFormat;import java.util.Date;import net.sf.json.JSONObject; public class DateTest { public static void main(String[] args) { Date d = new Date(); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"

新浪微博项目中我学会的东西

微博中我学会的东西: 1.项目环境的搭建(推送,版本号,支持的iOS几版本几以上的,用与不用StoryBoard两种建立方式,APPIcon,启动图片的两种方式,还有项目类的前缀) 1.1 创建窗口: //创建窗口 //不能使用局部变量(UIWindow *window) self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].applicationFrame]; self.window.backgroundColo

asp.net Web项目中使用Log4Net进行错误日志记录

使用log4net可以很方便地为应用添加日志功能.应用Log4net,开发者可以很精确地控制日志信息的输出,减少了多余信息,提高了日志记录性能.同时,通过外部配置文件,用户可以不用重新编译程序就能改变应用的日志行为,使得用户可以根据情况灵活地选择要记录的信息. 那么我们如何在Web项目中使用Log4Net呢? 一.基本配置 1.下载Log4Net,地址如下:http://logging.apache.org/log4net/download_log4net.cgi,如下图所示: 2.下载到本地后