Мне интересно, какая разница (в практическом смысле) между типами данных ADO adTinyInt
и adUnsigned
.ADO adTinyInt vs adUnsignedTinyInt с SQL Server
В базе данных (MS SQL Server) столбец Я взаимодействующий с данными имеет
Таким образом, для создания параметров ADO для столбца SQL Server TINYINT
, я должен использовать adTinyInt
или adUnsigned
, и почему?
например. Моя цель - поддерживать диапазон значений 0-255, поддерживаемый SQL Server TINYINT. Поэтому я хочу знать, какой из этих двух типов ADO лучше всего подходит.
Я прочитал определения каждого типа данных ADO на MSDN:
- adTinyInt (16) Указывает на один байт целое число (DBTYPE_I1).
- adUnsignedTinyInt (17) Указывает однобайтное целое без знака (DBTYPE_UI1).
Если тип данных TINYINT MS SQL содержит только значения от 1 до 255, не лучший выбор быть adUnsignedTinyInt
(как показано на W3 Schools ADO data type mapping matrix)?
Кажется, оба размера 1 байт, так что, возможно, это не имеет значения?
sql server должен ограничивать себя, чтобы сохранить это отрицательное значение как простой байт, когда вы получаете то же значение, которое вам нужно знать, которое подписано, и поэтому вы рассматриваете его как подписанный байт (adTinyInt). –
@CiroCorvino: предложите это здесь connect.microsoft.com, потому что SQL Server хранит только 0-255, без знака в настоящее время и выполнил в течение 20+ лет – gbn
да, но значенные значения - это просто байты с самым левым битом в 1 –