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

PS.本来打算转载Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=95675(SQL SERVER与C#中数据类型的对应关系) ,但觉得作者以代码的方式写出来,看起来不是那么直观,查找也不方便.所以参考了作者的文章和SQLServer05的帮助文档制作了以上这个表格.

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1288946

/// <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;
  }

时间: 2024-08-29 00:09:44

SQL SERVER与C#的数据类型对应表的相关文章

????SQL Server中默认数据库和默认表的作用

我们知道Oracle数据库的安装架构可以是1个数据库对应1个或多个实例.而在SQL Server中,其架构和Oracle 完全相反,它是1个实例(默认实例名为Hostname主机名)下面包含多个数据库,在sqlserver数据库中(2000,2005,2008等),主要包含4个默认的数据库,分别是master数据库.model数据库.tempdb数据库和msdb数据库.这些数据库是SQL Server的心脏和灵魂.另外,还默认安装了两个实例数据库,分别是:northwind数据库和pubs数据库

玩转SQL Server复制回路の变更数据类型、未分区表转为分区表

玩转SQL Server复制回路の变更数据类型.未分区表转为分区表 复制的应用: 初级应用:读写分离.数据库备份 高级应用:搬迁大型数据库(跨机房).变更数据类型.未分区表转为分区表 京东的复制专家 菠萝 曾经写过文章.在数据库大会上也做过演讲,但是我相信真正按照菠萝兄的文章自己去做一次实验的人应该不多 京东的复制专家 菠萝 的文章地址:Replication的犄角旮旯(一)--变更订阅端表名的应用场景 为什麽要玩转复制,大家想象一下:变更数据类型.未分区表转为分区表 这些业务场景经常都会发生,

Microsoft Access、MySQL 以及 SQL Server 所使用的数据类型和范围。

Microsoft Access.MySQL 以及 SQL Server 所使用的数据类型和范围. Microsoft Access 数据类型 数据类型 描述 存储 Text 用于文本或文本与数字的组合.最多 255 个字符.   Memo Memo 用于更大数量的文本.最多存储 65,536 个字符. 注释:无法对 memo 字段进行排序.不过它们是可搜索的.   Byte 允许 0 到 255 的数字. 1 字节 Integer 允许介于 -32,768 到 32,767 之间的数字. 2

SQL Server 2005 中的数据类型总结

注:转自土豆网 SQL Server 2005 中的数据类型归纳为下列类别: 精确数字 bigint decimal int numeric smallint money tinyint smallmoney bit 近似数字 float real 日期和时间 datetime smalldatetime 字符串 char text varchar Unicode字符串 nchar ntext nvarchar 二进制字符串 binary image varbinary 其他数据类型 curso

PostgreSQL、SQL Server数据库中的数据类型的映射关系

PostgreSQL 8.1 轰动发布,我也打算将原来使用 SQL Server 的一些应用迁移到 PostgreSQL 上,首先需要迁移的是表,那么这就必须要先搞清楚这两个数据库中的数据类型的映射关系.查了下 PostgreSQL 文档特制作如下对应表格,以飨各位. 注意:PostgreSQL 中的 money(货币)数据类型现在已经废弃,用 numeric 或 decimal 以及和 to_char 函数一起使用就可以取代它. SQL Server 中的 datetime.smalldate

列出 sql server某个数据库的角色 及 表名

-- USE YOUR DB NAME select QUOTENAME(SCHEMA_NAME(SCHEMA_ID)) + '.' + QUOTENAME(NAME) FROM SYS.TABLES select '[' + schema_name(schema_id) + '].[' + name + ']' from sys.tables SELECT '[' + TABLE_SCHEMA + '].[' + TABLE_NAME + ']' FROM INFORMATION_SCHEMA

sql server 判断是否存在数据库,表,列,视图

1 判断数据库是否存在if exists (select * from sys.databases where name = '数据库名')    drop database [数据库名] 2 判断表是否存在if exists (select * from sysobjects where id = object_id(N'[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)    drop table [表名] 3 判断存储过程是否存在if ex

使用的 SQL Server 版本不支持数据类型“datetime2”解决办法

错误原因,在使用ado.net entity的时候,entity使用的数据库是sqlserver 2008,但后来实际使用中使用的数据库是sqlserver 2005 使用的 SQL Server 版本不支持数据类型“datetime2” The version of SQL Server in use does not support datatype ‘datetime2 解决办法 Open your EDMX in a file editor (or “open with…” in Vis

使用的 SQL Server 版本不支持数据类型“datetime2”.

错误原因,在使用ado.net entity的时候,entity使用的数据库是sqlserver 2008, 但后来实际使用中使用的数据库是sqlserver 2005, 使用的 SQL Server 版本不支持数据类型“datetime2” The version of SQL Server in use does not support datatype ‘datetime2 解决办法 Open your EDMX in a file editor (or “open with…” in V