Мне кажется, у меня проблема с тем, как SQL Server 2000 обрабатывает шестнадцатеричные числа.
Если я сделаю
select * from table where [timestamp] = 44731446
, строка, которую он возвращает, показывает метку времени как 0x0000000202AA8C36
Точно так же в другой таблице, если I
select * from table2 where [timestamp] = 44731446
строка, которую он возвращает, показывает метку времени как 0x0000000002AA8C36 (обратите внимание на пропущенные 2)
MS Calc говорит мне, что первыйотметка времени = 8634666038 в десятичном формате и вторая отметка времени = 44731446 в десятичном формате, что соответствует моему исходному запросу в обеих таблицах.
Так почему SQL Server возвращает другое число, но при этом успешно запрашивает его?Я полагаю, что это путь к проблеме с обновлением, в которой строка не будет обновляться.