SQL Server 与 ADO.NET 数据类型映射
SQL Server 数据类型映射
SQL Server 和 .NET Framework 基于不同的类型系统。 例如,.NET Framework Decimal 结构的最大小数位数为 28,而 SQL Server 的 decimal 和 numeric 数据类型的最大小数位数为 38。 为了在读取和写入数据时维护数据的完整性,SqlDataReader 将公开用于返回 System.Data.SqlTypes 的对象的 SQL Server 特定的类型化访问器方法以及用于返回 .NET Framework 类型的访问器方法。 SQL Server 类型和 .NET Framework 类型也可通过 DbType 和 SqlDbType 类中的枚举表示,当您指定 SqlParameter 数据类型时可以使用这些枚举。
下表显示推断的 .NET Framework 类型、DbType 和 SqlDbType 枚举以及 SqlDataReader 的访问器方法。
|
SQL Server 数据库引擎类型 |
.NET Framework 类型 |
SqlDbType 枚举 |
SqlDataReader SqlTypes 类型化访问器 |
DbType 枚举 |
SqlDataReader DbType 类型化访问器 |
|---|---|---|---|---|---|
|
bigint |
Int64 |
||||
|
binary |
Byte[] |
||||
|
bit |
Boolean |
||||
|
char |
String Char[] |
||||
|
date (SQL Server 2008 及更高版本) |
DateTime |
||||
|
datetime |
DateTime |
||||
|
datetime2 (SQL Server 2008 及更高版本) |
DateTime |
无 |
|||
|
datetimeoffset (SQL Server 2008 及更高版本) |
DateTimeOffset |
无 |
|||
|
decimal |
Decimal |
||||
|
FILESTREAM 特性 (varbinary(max)) |
Byte[] |
||||
|
float |
Double |
||||
|
image |
Byte[] |
||||
|
int |
Int32 |
||||
|
money |
Decimal |
||||
|
nchar |
String Char[] |
||||
|
ntext |
String Char[] |
||||
|
numeric |
Decimal |
||||
|
nvarchar |
String Char[] |
||||
|
real |
Single |
||||
|
rowversion |
Byte[] |
||||
|
smalldatetime |
DateTime |
||||
|
smallint |
Int16 |
||||
|
smallmoney |
Decimal |
||||
|
sql_variant |
Object* |
GetValue * |
|||
|
文本 |
String Char[] |
||||
|
time (SQL Server 2008 及更高版本) |
TimeSpan |
无 |
|||
|
timestamp |
Byte[] |
||||
|
tinyint |
Byte |
||||
|
uniqueidentifier |
Guid |
||||
|
varbinary |
Byte[] |
||||
|
varchar |
String Char[] |
||||
|
xml |
Xml |
无 |
* 如果已知 sql_variant 的基础类型,则使用特定的类型化访问器。
SQL Server 与 ADO.NET 数据类型映射的更多相关文章
- PostgreSQL、SQL Server数据库中的数据类型的映射关系
PostgreSQL 8.1 轰动发布,我也打算将原来使用 SQL Server 的一些应用迁移到 PostgreSQL 上,首先需要迁移的是表,那么这就必须要先搞清楚这两个数据库中的数据类型的映射关 ...
- 使用的 SQL Server 版本不支持数据类型“datetime2”.
错误原因,在使用ado.net entity的时候,entity使用的数据库是sqlserver 2008, 但后来实际使用中使用的数据库是sqlserver 2005, 使用的 SQL Server ...
- ef SQL Server 版本不支持数据类型“datetime2”
我遇到这个问题是在用数据库模型的时候.当时我电脑上是sql2008 通过vs2010建立了一个ADO.net数据库模型,之后在项目上线的时候,临时把数据库换成了sql2005,在添加新闻的时候出现了“ ...
- 玩转SQL Server复制回路の变更数据类型、未分区表转为分区表
玩转SQL Server复制回路の变更数据类型.未分区表转为分区表 复制的应用: 初级应用:读写分离.数据库备份 高级应用:搬迁大型数据库(跨机房).变更数据类型.未分区表转为分区表 京东的复制专家 ...
- SQL Server中的Image数据类型的操作
原文:SQL Server中的Image数据类型的操作 准备工作,在库Im_Test中建立一张表Im_Info,此表中有两个字段,分别为Pr_Id (INT),Pr_Info (IMAGE),用来存储 ...
- 数据库SQL Server与C#中数据类型的对应关系
ylbtech- .NET-Basic:数据库SQL Server与C#中数据类型的对应关系 数据库SQL SServer与C#中数据类型的对应关系 1.A,返回顶部 数据库 C#程序 int int ...
- JDBC连接SQL server与ADO.NET连接Sql Server对比
JDBC连接SQL server与ADO.NET连接Sql Server对比 1.JDBC连接SQL server 1)java方面目前有很多驱动能够驱动连接SQL servernet. 主流的有 ...
- SQL SERVER与C#的数据类型对应表
序号 类别 SQLServer C Sharp 备注 1 整数 bit Boolean True转换为1False转换为0 2 tinyint Byte C Sharp 数据类型都位于System命名 ...
- 【转】PowerShell 连接SQL Server 数据库 - ADO.NET
转至:http://www.pstips.net/connect-sql-database.html PowerShell 通过ADO.NET连接SQL Server数据库,并执行SQL脚本.工作中整 ...
随机推荐
- python之控制流习题+代码
# !/usr/bin/python3 # -*- coding: utf-8 -*- # @Time :2018/11/26 15:32 # @Author :yosef # @Email :wur ...
- POJ_2407 Relatives 【欧拉函数裸题】
一.题目 Given n, a positive integer, how many positive integers less than n are relatively prime to n? ...
- 115th LeetCode Weekly Contest Prison Cells After N Days
There are 8 prison cells in a row, and each cell is either occupied or vacant. Each day, whether the ...
- HihoCoder - 1172 SG函数应用
原文讲解很nice,我尝试换种观点 设背面朝上为F,否则T, 那么局面FFFFFF肯定为0 局面FTFFFF可以转为上面局面0,设为1 局面FFTFFF可以转到0,1,设为2 子游戏SG(x)=x 对 ...
- python 函数基础知识整理
一.函数的定义: 定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":". def 是固定的,不能变,必须是连续的def三个字母,不能分开... 空格 为了将 ...
- maven的resources插件
<build><sourceDirectory>src/jvm</sourceDirectory> <testSourceDirectory>test/ ...
- Go初探
官方网站:https://golang.org/ 标准库文档:https://golang.org/pkg/ 在线编码学习:https://play.golang.org/ PS:请自行FQ 简介 ...
- Angular4+NodeJs+MySQL 入门-02 MySql操作类
NodeJs操作MySQL类 此类封装了几个常用的方法:插入,更新,删除,查询,开启事务,事务提交,事务回滚等操作.有一这个类,操作MYSQL就方便多了. 批处理,存储过程等方法还没有添加,因为觉得目 ...
- Python-2.7 配置 tab 自动补全功能
作者博文地址:http://www.cnblogs.com/liu-shuai/ 之前一直使用shell编程,习惯了shell的 tab 自动补全功能,而Python的命令行却不支持 tab 自动补全 ...
- Ace向你推荐一些实用的干货库~开发安卓的好帮手
1 毁灭地球的军火库arsenal- 你想要的枪这里都有卖 哈哈哈哈 , http://android-arsenal.com/ 2 黑科技---在线反编译----嘿嘿嘿 在线反编译 方便简单 客官 ...