ADO adTinyInt 与 adUnsignedTinyInt 与 SQL 服务器
ADO adTinyInt vs adUnsignedTinyInt with SQL Server
我想知道 ADO 数据类型 adTinyInt
和 adUnsigned
之间有什么区别(实际上)。
在数据库(MS SQL 服务器)中,我正在与之交互的列是数据
那么,要为 SQL 服务器 TINYINT
列创建 ADO 参数,我应该使用 adTinyInt
还是 adUnsigned
,为什么?
例如我的目标是支持 SQL 服务器 TINYINT 支持的值范围 0-255。所以我想知道这两种 ADO 类型中哪一种最能实现这一点。
我在 MSDN 上阅读了每个 ADO 数据类型的定义:
- adTinyInt (16) 表示一个字节的有符号整数(DBTYPE_I1)。
- adUnsignedTinyInt (17) 表示一个字节无符号整数(DBTYPE_UI1)。
如果 MS SQL 数据类型 TINYINT 仅包含 1 到 255 之间的值,那么最好的选择不是 adUnsignedTinyInt
(如 W3 Schools ADO data type mapping matrix 所示)吗?
似乎两者的大小都是 1 个字节,所以也许这无关紧要?
使用 adUnsignedTinyInt
因为 adTinyInt
可以有负值,这在 SQL 服务器 tinyint
中是不允许的,因此你 SQL 调用可能会失败
你的 link (http://www.w3schools.com/asp/ado_datatypes.asp) 没有提到 adTinyInt
因为这个原因
如果要存储从 -128
到 127
的值,则使用 adTinyInt
传递和检索这些值 to/from 相对 Sql 服务器TINYINT
列。
而是为 0-255
范围内的存储值传递 adUnsignedTinyInt
参数类型。
我想知道 ADO 数据类型 adTinyInt
和 adUnsigned
之间有什么区别(实际上)。
在数据库(MS SQL 服务器)中,我正在与之交互的列是数据
那么,要为 SQL 服务器 TINYINT
列创建 ADO 参数,我应该使用 adTinyInt
还是 adUnsigned
,为什么?
例如我的目标是支持 SQL 服务器 TINYINT 支持的值范围 0-255。所以我想知道这两种 ADO 类型中哪一种最能实现这一点。
我在 MSDN 上阅读了每个 ADO 数据类型的定义:
- adTinyInt (16) 表示一个字节的有符号整数(DBTYPE_I1)。
- adUnsignedTinyInt (17) 表示一个字节无符号整数(DBTYPE_UI1)。
如果 MS SQL 数据类型 TINYINT 仅包含 1 到 255 之间的值,那么最好的选择不是 adUnsignedTinyInt
(如 W3 Schools ADO data type mapping matrix 所示)吗?
似乎两者的大小都是 1 个字节,所以也许这无关紧要?
使用 adUnsignedTinyInt
因为 adTinyInt
可以有负值,这在 SQL 服务器 tinyint
中是不允许的,因此你 SQL 调用可能会失败
你的 link (http://www.w3schools.com/asp/ado_datatypes.asp) 没有提到 adTinyInt
因为这个原因
如果要存储从 -128
到 127
的值,则使用 adTinyInt
传递和检索这些值 to/from 相对 Sql 服务器TINYINT
列。
而是为 0-255
范围内的存储值传递 adUnsignedTinyInt
参数类型。