TDS[表格数据流协议] int 类型

TDS[Tabular Data stream protocol] int type

根据 TDS 规范,我无法理解 int 类型是否已签名。 例如 tinyint,具有十六进制值 0xFF,表示 -1255?

谢谢

T-SQL 的 MSDN 有 this table:

Data type   Range                                                                      Storage
bigint      -2^63 (-9,223,372,036,854,775,808) to 2^63-1 (9,223,372,036,854,775,807)   8 Bytes
int         -2^31 (-2,147,483,648) to 2^31-1 (2,147,483,647)                           4 Bytes
smallint    -2^15 (-32,768) to 2^15-1 (32,767)                                         2 Bytes
tinyint     0 to 255                                                                   1 Byte

这意味着 tinyint 是无符号的,但所有其他(smallint、int、bigint)都是有符号的。

至少这是 SQL 服务器解释 T-SQL 中的类型的方式,因此您应该以相同的方式解释 TDS 中的数据。