SQL SERVER与C#的数据类型对应表

Posted alex80

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL SERVER与C#的数据类型对应表相关的知识,希望对你有一定的参考价值。

序号
类别
SQLServer
C Sharp
备注
1
整数
bit
Boolean
True转换为1False转换为0
2
tinyint
Byte
C Sharp 数据类型都位于System命名空间
3
smallint
Int16
4
int
Int32
5
bigint
Int64
6
smallmoney
Decimal
7
money
Decimal
8
numeric
Decimal
9
decimal
Decimal
10
浮点数
float
Double
11
real
Single
12
日期和时间
smalldatetime
DateTime
13
datetime
DateTime
14
timestamp
DateTime
15
字符串
char
String
16
text
String
17
varchar
String
18
nchar
String
19
ntext
String
20
nvarchar
String
21
二进制数据
 
 
binary
Byte[]
22
varbinary
Byte[]
23
image
Byte[]
24
其他
uniqueidentifier
Guid
25
Variant
Object
 
 

SqlDbType => DbType

SqlDbType.BigInt				DbType.Int64
SqlDbType.Binary				DbType.Binary
SqlDbType.Bit					DbType.Boolean
SqlDbType.Char					DbType.AnsiStringFixedLength
SqlDbType.DateTime				DbType.DateTime
SqlDbType.Decimal				DbType.Decimal
SqlDbType.Float					DbType.Double
SqlDbType.Image					DbType.Binary
SqlDbType.Int					DbType.Int32
SqlDbType.Money					DbType.Currency
SqlDbType.NChar					DbType.StringFixedLength
SqlDbType.NText					DbType.String
SqlDbType.NVarChar				DbType.String
SqlDbType.Real					DbType.Single
SqlDbType.UniqueIdentifier		        DbType.Guid
SqlDbType.SmallDateTime			        DbType.DateTime
SqlDbType.SmallInt				DbType.Int16
SqlDbType.SmallMoney			        DbType.Currency
SqlDbType.Text					DbType.AnsiString
SqlDbType.Timestamp				DbType.Binary
SqlDbType.TinyInt				DbType.Byte
SqlDbType.VarBinary				DbType.Binary
SqlDbType.VarChar				DbType.AnsiString
SqlDbType.Variant				DbType.Object
SqlDbType.Xml					DbType.Xml
SqlDbType.Udt					DbType.Object
SqlDbType.Structured			        DbType.Object
SqlDbType.Date					DbType.Date
SqlDbType.Time					DbType.Time
SqlDbType.DateTime2				DbType.DateTime2
SqlDbType.DateTimeOffset		        DbType.DateTimeOffset
 
技术图片
技术图片
  /// <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;
技术图片
技术图片

以上是关于SQL SERVER与C#的数据类型对应表的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server类型与C#类型对应关系

SQL Server 数据类型的 C# 等效项

sql server 2000 ntext 字段对应oracle那个字段?

java实体属性对应mysql和SQL Server 和Oracle 数据类型对应

Sql Server中的数据类型和Mysql中的数据类型的对应关系(转)

C#中如何用Linq在SQL Server的表中多列检索多个关键字