(一)C#与SQL Server 2005(或以下版本):

C#

C#取值

SQL Server

SQL Server取值

System.DateTime

samlltime

System.Object

variant

(二)C#与SQL Server 2008(或以上版本):

C#

C#取值

SQL Server

SQL Server取值

System.Boolean

true/false

bit

1/0

System.SByte

-128~127

System.Byte

0~255

tinyint

0~255

System.Int16

-32768~32767

smallint

-32768~32767

System.UInt16

0~65535

System.Int32

-2147483648~2147483647

int

-2147483648~2147483647

System.UInt32

0~4294967295

System.Int64

-9223372036854775808~ 9223372036854775807L

bigint

-9223372036854775808~9223372036854775807

System.UInt64

0~18446744073709551615UL

System.Single

real

System.Double

float

System.Decimal

smallmoney

-214748.3648~214748.3647

money

-922337203685477.5808~922337203685477.5807

decimal

-999999999999999999.49~999999999999999999.49

numeric

1~38位

System.Char

System.String

char

1~8000

varchar

1~8000

nchar

1~4000

nvarchar

1~4000

text

ntext

time

00:00:00.0000000~23:59:59.9999999

System.DateTime

date

0001-01-01~9999-12-31

smalldatetime

datetime

1753-01-01 00:00:00:000~9999-12-31 23:59:59.997

datetime2

datetimeoffset

System.Byte[]

timestamp

image

binary

varbinary

System.Guid

uniqueidentifier

System.Object

sql_variant

(三)根据数据库数据类型字符,获取C#中对应的数据类型字符

 1 /// <summary>
2 /// 将数据库数据类型字符串,转为C#数据类型字符串。
3 /// </summary>
4 /// <param name="dbType">数据库数据类型字符串。</param>
5 /// <returns>C#数据类型字符串。</returns>
6 private static string DBTypeToCSharpType(string dbType)
7 {
8 string cSharpType = string.Empty;
9 switch (dbType.ToLower())
10 {
11 case "bit":
12 cSharpType = "bool";
13 break;
14 case "tinyint":
15 cSharpType = "byte";
16 break;
17 case "smallint":
18 cSharpType = "short";
19 break;
20 case "int":
21 cSharpType = "int";
22 break;
23 case "bigint":
24 cSharpType = "long";
25 break;
26 case "real":
27 cSharpType = "float";
28 break;
29 case "float":
30 cSharpType = "double";
31 break;
32 case "smallmoney":
33 case "money":
34 case "decimal":
35 case "numeric":
36 cSharpType = "decimal";
37 break;
38 case "char":
39 case "varchar":
40 case "nchar":
41 case "nvarchar":
42 case "text":
43 case "ntext":
44 cSharpType = "string";
45 break;
46 case "samlltime":
47 case "date":
48 case "smalldatetime":
49 case "datetime":
50 case "datetime2":
51 case "datetimeoffset":
52 cSharpType = "System.DateTime";
53 break;
54 case "timestamp":
55 case "image":
56 case "binary":
57 case "varbinary":
58 cSharpType = "byte[]";
59 break;
60 case "uniqueidentifier":
61 cSharpType = "System.Guid";
62 break;
63 case "variant":
64 case "sql_variant":
65 cSharpType = "object";
66 break;
67 default:
68 cSharpType = "string";
69 break;
70 }
71 return cSharpType;
72 }

C# 与 SQL Server 的数据类型对应关系的更多相关文章

  1. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  2. Sql Server之数据类型详解

      数据类型是一种属性,用于指定对象可保存的数据的类型,SQL Server中支持多种数据类型,包括字符类型.数值类型以及日期类型等.数据类型相当于一个容器,容器的大小决定了装的东西的多少,将数据分为 ...

  3. SQL Server 常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 整数类型 int 存储范围是-2,147,483,648到2,147,483,6 ...

  4. 说说SQL Server的数据类型

    以SQL Server为例,SQL Server的数据类型总共有33种,归纳为一下类别: 精确数字 Unicode字符串 近似数字 二进制字符串 日期和时间 其他数据类型 字符串   1.数字数据类型 ...

  5. SQL SERVER的数据类型

    1.SQL SERVER的数据类型 数据类弄是数据的一种属性,表示数据所表示信息的类型.任何一种计算机语言都定义了自己的数据类型.当然,不同的程序语言都具有不同的特点,所定义的数据类型的各类和名称都或 ...

  6. sql server 字符数据类型

    SQL Server 中字符类型包括varchar.char.text等.主要用于存储字符数据.varchar和char类型的主要区别在于数据填充.例如,一个列名为FirstName且数据类型为var ...

  7. 通过SQL Server自定义数据类型实现导入数据

    写在前面 在看同事写的代码时看到了SQL Server中可以自定义数据类型,而且定义的是DataTable类型的数据类型. 后我想起了以前我们导入数据时要么是循环insert写入,要么是SqlBulk ...

  8. Sql Server 自定义数据类型

    SQLServer 提供了 25 种基本数据类型: ·Binary [(n)]  二进制数据 既可以是固定长度的(Binary),也可以是变长度的.其中,n 的取值范围是从 1 到 8000.其存储窨 ...

  9. SQL Server datetime数据类型设计、优化误区

    一.场景 在SQL Server 2005中,有一个表TestDatetime,其中Dates这个字段的数据类型是datetime,如果你看到表的记录如下图所示,你最先想到的是什么呢? (图1:数据列 ...

随机推荐

  1. 在腾讯云&阿里云上部署JavaWeb项目(Tomcat+MySQL)

    之前做项目都是在本地跑,最近遇到需要在在云服务器(阿里云或者腾讯云都可以,差不多)上部署Java Web项目的问题,一路上遇到了好多坑,在成功部署上去之后写一下部署的步骤与过程,一是帮助自己总结记忆, ...

  2. BZOJ4530 BJOI2014大融合(线段树合并+并查集+dfs序)

    易知所求的是两棵子树大小的乘积.先建出最后所得到的树,求出dfs序和子树大小.之后考虑如何在动态加边过程中维护子树大小.这个可以用树剖比较简单的实现,但还有一种更快更优美的做法就是线段树合并.对每个点 ...

  3. Js 百分比进度条

    [构想] CSS3 + JS CSS3控制进度 利用CSS3中的 @keyframes JS实现百分比 根据CSS来调整,时间 [页面代码] 第一种: 默认直接进入就是下载 CSS代码 body { ...

  4. M - Help Hanzo LightOJ - 1197 (大区间求素数)

    题意: 求[a,b]之间的素数的个数 数很大...数组开不起 所以要想到转化 因为小于等于b的合数的最小质因子 一定小于等于sqrt(b),所以只需要求出来[0,sqrt(b)]的素数  然后取倍数删 ...

  5. shell(2)-&& 与 || 逻辑或与非

    test 命令测试 -常见的测试类型–测试文件状态–字符串比较–整数值比较–逻辑测试&& 如果是“前面”(真),则“后面”[ -f /var/run/dhcpd.pid ] & ...

  6. 在kubernetes集群上用helm安装Datadog(Monitoring)

    Datadog is a monitoring service that gathers monitoring data from your containers within your Azure ...

  7. exec函数族的使用

    作者:王姗姗,华清远见嵌入式学院讲师. exec用被执行的程序完全替换调用它的程序的影像.fork创建一个新的进程就产生了一个新的PID,exec启动一个新程序,替换原有的进程,因此这个新的被exec ...

  8. 【洛谷P4735】最大异或和

    题目大意:给定一个长度为 N 的序列,支持两个操作:在序列末尾添加一个新的数字,查询序列区间 \([l,r]\) 内使得 \(a_p\oplus a_{q+1}\oplus ... a_N\oplus ...

  9. 解决FLASH遮住层的问题 IE,Firefox都适用!

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...

  10. std::lock_guard和std::unique_lock

    std::unique_lock也可以提供自动加锁.解锁功能,比std::lock_guard更加灵活 https://www.cnblogs.com/xudong-bupt/p/9194394.ht ...