DbType,OleDbType,SqlDbType区别

2024-03-15 03:38

本文主要是介绍DbType,OleDbType,SqlDbType区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DbType,OleDbType,SqlDbType区别

_dbtype _

DbType说明 OleDbType说明 SqlDbType说明 
Boolean简单类型,表示 true 或 false 的布尔值。 Boolean布尔值 (DBTYPE_BOOL)。它映射到 Boolean。 BitBoolean。无符号数值,可以是 0、1 或 nullNothingnullptrnull 引用(在 Visual Basic 中为 Nothing)。 
         
SByte整型,表示值介于 -128 到 127 之间的有符号 8 位整数。 TinyInt8 位带符号的整数 (DBTYPE_I1)。它映射到 SByte。    
Byte一个 8 位无符号整数,范围在 0 到 255 之间。 UnsignedTinyInt8 位无符号整数 (DBTYPE_UI1)。它映射到 Byte。 TinyIntByte。8 位的无符号整数。 
Int16整型,表示值介于 -32768 到 32767 之间的有符号 16 位整数。 SmallInt16 位带符号的整数 (DBTYPE_I2)。它映射到 Int16。 SmallIntInt16。16 位的有符号整数。 
Int32整型,表示值介于 -2147483648 到 2147483647 之间的有符号 32 位整数。 Integer32 位带符号的整数 (DBTYPE_I4)。它映射到 Int32。 IntInt32。32 位的有符号整数。 
Int64整型,表示值介于 -9223372036854775808 到 9223372036854775807 之间的有符号 64 位整数。 BigInt64 位带符号的整数 (DBTYPE_I8)。它映射到 Int64。 BigIntInt64。64 位的有符号整数。 
UInt16整型,表示值介于 0 到 65535 之间的无符号 16 位整数。 UnsignedSmallInt16 位无符号整数 (DBTYPE_UI2)。它映射到 UInt16。    
UInt32整型,表示值介于 0 到 4294967295 之间的无符号 32 位整数。 UnsignedInt32 位无符号整数 (DBTYPE_UI4)。它映射到 UInt32。    
UInt64整型,表示值介于 0 到 18446744073709551615 之间的无符号 64 位整数。 UnsignedBigInt64 位无符号整数 (DBTYPE_UI8)。它映射到 UInt64。    
         
Single浮点型,表示从大约 1.5 x 10 -45 到 3.4 x 10 38 且精度为 7 位的值。 Single浮点数字,范围在 -3.40E +38 到 3.40E +38 之间 (DBTYPE_R4)。它映射到 Single。 RealSingle。-3.40E +38 到 3.40E +38 范围内的浮点数。 
Currency货币值,范围在 -2 63(即 -922,337,203,685,477.5808)到 2 63 -1(即 +922,337,203,685,477.5807)之间,精度为千分之十个货币单位。 Currency一个货币值,范围在 -2 63(或 -922,337,203,685,477.5808)到 2 63 -1(或 +922,337,203,685,477.5807)之间,精度为千分之十个货币单位 (DBTYPE_CY)。它映射到 Decimal。 MoneyDecimal。货币值,范围在 -2 63(即 -9,223,372,036,854,775,808)到 2 63 -1(即 +9,223,372,036,854,775,807)之间,精度为千分之十个货币单位。 
      SmallMoneyDecimal。货币值,范围在 -214,748.3648 到 +214,748.3647 之间,精度为千分之十个货币单位。 
Decimal简单类型,表示从 1.0 x 10 -28 到大约 7.9 x 10 28 且有效位数为 28 到 29 位的值。 Decimal定点精度和小数位数数值,范围在 -10 38 -1 和 10 38 -1 之间 (DBTYPE_DECIMAL)。它映射到 Decimal。 DecimalDecimal。固定精度和小数位数数值,在 -10 38 -1 和 10 38 -1 之间。 
Double浮点型,表示从大约 5.0 x 10 -324 到 1.7 x 10 308 且精度为 15 到 16 位的值。 Double浮点数字,范围在 -1.79E +308 到 1.79E +308 之间 (DBTYPE_R8)。它映射到 Double。 FloatDouble。-1.79E +308 到 1.79E +308 范围内的浮点数。 
   Numeric具有定点精度和小数位数的精确数值 (DBTYPE_NUMERIC)。它映射到 Decimal。    
VarNumeric变长数值。 VarNumeric变长数值(只限 OleDbParameter)。它映射到 Decimal。    
         
Guid全局唯一标识符(或 GUID)。 Guid全局唯一标识符(或 GUID) (DBTYPE_GUID)。它映射到 Guid。 UniqueIdentifierGuid。全局唯一标识符(或 GUID)。 
          
Binary二进制数据的可变长度流,范围在 1 到 8,000 个字节之间。 Binary二进制数据流 (DBTYPE_BYTES)。它映射到 Byte 类型的 Array。 BinaryByte 类型的 Array。二进制数据的固定长度流,范围在 1 到 8,000 个字节之间。 
   VarBinary二进制数据的变长流(只限 OleDbParameter)。它映射到 Byte 类型的 Array。 VarBinaryByte 类型的 Array。二进制数据的可变长度流,范围在 1 到 8,000 个字节之间。如果字节数组大于 8,000 个字节,隐式转换会失败。在使用比 8,000 个字节大的字节数组时,请显式设置对象。 
   LongVarBinary长的二进制值(只限 OleDbParameter)。它映射到 Byte 类型的 Array。    
      ImageByte 类型的 Array。二进制数据的可变长度流,范围在 0 到 2 31 -1(即 2,147,483,647)字节之间。 
         
AnsiStringFixedLength非 Unicode 字符的固定长度流。 Char字符串 (DBTYPE_STR)。它映射到 String。 CharString。非 Unicode 字符的固定长度流,范围在 1 到 8,000 个字符之间。 
AnsiString非 Unicode 字符的可变长度流,范围在 1 到 8,000 个字符之间。 VarChar非 Unicode 字符的变长流(只限 OleDbParameter)。它映射到 String。 VarCharString。非 Unicode 字符的可变长度流,范围在 1 到 8,000 个字符之间。 
StringFixedLengthUnicode 字符的定长串。 LongVarChar长的字符串值(只限 OleDbParameter)。它映射到 String。 NCharString。Unicode 字符的固定长度流,范围在 1 到 4,000 个字符之间。 
String表示 Unicode 字符串的类型。 LongVarWChar长的以 null 终止的 Unicode 字符串值(只限 OleDbParameter)。它映射到 String。 NVarCharString。Unicode 字符的可变长度流,范围在 1 到 4,000 个字符之间。如果字符串大于 4,000 个字符,隐式转换会失败。在使用比 4,000 个字符更长的字符串时,请显式设置对象。 
   VarWChar长可变、以 null 终止的 Unicode 字符流(只限 OleDbParameter)。它映射到 String。 TextString。非 Unicode 数据的可变长度流,最大长度为 2 31 -1(即 2,147,483,647)个字符。 
   WChar以 null 终止的 Unicode 字符流 (DBTYPE_WSTR)。它映射到 String。 NTextString。Unicode 数据的可变长度流,最大长度为 2 30 - 1(即 1,073,741,823)个字符。 
   BSTR以 null 终止的 Unicode 字符串 (DBTYPE_BSTR)。它映射到 String。    
         
DateTime表示一个日期和时间值的类型。 Date日期数据,存储为双精度型 (DBTYPE_DATE)。整数部分是自 1899 年 12 月 30 日以来的天数,而小数部分是不足一天的部分。它映射到 DateTime。 DateTimeDateTime。日期和时间数据,值范围从 1753 年 1 月 1 日到 9999 年 12 月 31 日,精度为 3.33 毫秒。 
DateTime2日期和时间数据。日期值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。时间值范围从 00:00:00 到 23:59:59.9999999,精度为 100 毫微秒。 DBDate格式为 yyyymmdd 的日期数据 (DBTYPE_DBDATE)。它映射到 DateTime。 DateTime2日期和时间数据。日期值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。时间值范围从 00:00:00 到 23:59:59.9999999,精度为 100 毫微秒。 
   DBTimeStamp格式为 yyyymmddhhmmss 的日期和时间数据 (DBTYPE_DBTIMESTAMP)。它映射到 DateTime。    
   Filetime64 位无符号整数,表示自 1601 年 1 月 1 日以来 100 个纳秒间隔的数字 (DBTYPE_FILETIME)。它映射到 DateTime。    
      SmallDateTimeDateTime。日期和时间数据,值范围从 1900 年 1 月 1 日到 2079 年 6 月 6 日,精度为 1 分钟。 
DateTimeOffset显示时区的日期和时间数据。日期值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。时间值范围从 00:00:00 到 23:59:59.9999999,精度为 100 毫微秒。时区值范围从 -14:00 到 +14:00。    DateTimeOffset显示时区的日期和时间数据。日期值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。时间值范围从 00:00:00 到 23:59:59.9999999,精度为 100 毫微秒。时区值范围从 -14:00 到 +14:00。 
   DBTime格式为 hhmmss 的时间数据 (DBTYPE_DBTIME)。它映射到 TimeSpan。 TimestampByte 类型的 Array。自动生成的二进制数,并保证其在数据库中唯一。timestamp 通常用作对表中各行的版本进行标记的机制。存储大小为 8 字节。 
Date表示日期值的类型。    Date日期数据,值范围从公元 1 年 1 月 1 日到公元 9999 年 12 月 31 日。 
Time表示时间值的类型。    Time基于 24 小时制的时间数据。时间值范围从 00:00:00 到 23:59:59.9999999,精度为 100 毫微秒。 
         
Object常规类型,表示任何没有由其他 DbType 值显式表示的引用或值类型。 Variant可包含数字、字符串、二进制或日期数据以及特殊值 Empty 和 Null 的特殊数据类型 (DBTYPE_VARIANT)。如果未指定任何其他类型,则假定为该类型。它映射到 Object。 VariantObject。特殊数据类型,可以包含数值、字符串、二进制或日期数据,以及 SQL Server 值 Empty 和 Null,后两个值在未声明其他类型的情况下采用。 
   PropVariant自动化 PROPVARIANT (DBTYPE_PROP_VARIANT)。它映射到 Object。    
         
XmlXML 文档或片段的分析表示。    XmlXML 值。使用 GetValue 方法或 Value 属性获取字符串形式的 XML,或通过调用 CreateReader 方法获取 XmlReader 形式的 XML。 
      UdtSQL Server 2005 用户定义的类型 (UDT)。 
      Structured指定表值参数中包含的构造数据的特殊数据类型。 
   IUnknown指向 IUnknown 接口的指针 (DBTYPE_UNKNOWN)。它映射到 Object。    
   IDispatch指向 IDispatch 接口的指针 (DBTYPE_IDISPATCH)。它映射到 Object。    
   Error32 位错误代码 (DBTYPE_ERROR)。它映射到 Exception。    
   Empty无任何值 (DBTYPE_EMPTY)。    

这篇关于DbType,OleDbType,SqlDbType区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/810667

相关文章

kotlin中const 和val的区别及使用场景分析

《kotlin中const和val的区别及使用场景分析》在Kotlin中,const和val都是用来声明常量的,但它们的使用场景和功能有所不同,下面给大家介绍kotlin中const和val的区别,... 目录kotlin中const 和val的区别1. val:2. const:二 代码示例1 Java

CSS Padding 和 Margin 区别全解析

《CSSPadding和Margin区别全解析》CSS中的padding和margin是两个非常基础且重要的属性,它们用于控制元素周围的空白区域,本文将详细介绍padding和... 目录css Padding 和 Margin 全解析1. Padding: 内边距2. Margin: 外边距3. Padd

Springboot @Autowired和@Resource的区别解析

《Springboot@Autowired和@Resource的区别解析》@Resource是JDK提供的注解,只是Spring在实现上提供了这个注解的功能支持,本文给大家介绍Springboot@... 目录【一】定义【1】@Autowired【2】@Resource【二】区别【1】包含的属性不同【2】@

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

分辨率三兄弟LPI、DPI 和 PPI有什么区别? 搞清分辨率的那些事儿

《分辨率三兄弟LPI、DPI和PPI有什么区别?搞清分辨率的那些事儿》分辨率这个东西,真的是让人又爱又恨,为了搞清楚它,我可是翻阅了不少资料,最后发现“小7的背包”的解释最让我茅塞顿开,于是,我... 在谈到分辨率时,我们经常会遇到三个相似的缩写:PPI、DPI 和 LPI。虽然它们看起来差不多,但实际应用

GORM中Model和Table的区别及使用

《GORM中Model和Table的区别及使用》Model和Table是两种与数据库表交互的核心方法,但它们的用途和行为存在著差异,本文主要介绍了GORM中Model和Table的区别及使用,具有一... 目录1. Model 的作用与特点1.1 核心用途1.2 行为特点1.3 示例China编程代码2. Tab

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

Spring中@RestController和@Controller的使用及区别

《Spring中@RestController和@Controller的使用及区别》:本文主要介绍Spring中@RestController和@Controller的使用及区别,具有很好的参考价... 目录Spring中@RestController和@Controller使用及区别1. 基本定义2. 使