У меня есть поле со значением -7590730850027557904 в SQL Server 2005, и я извлекаю его через ADO в Delphi 5, но я получил 7590730850027557904 - отрицательный знак был опущен.Как правильно извлечь значения longint из SQL Server в Delphi 5?
Вот мой код
with DataSet do begin Connection := Conn; CommandText := 'SELECT * FROM CUSTOMERSLIST'; Open; end; ShowMessage(DataSet.FieldByName('SID').AsString);
Спасибо моему коллеге. Решение состоит в том, чтобы преобразовать bigint в строку при выполнении запроса из базы данных.
with DataSet do begin Connection := Conn; CommandText := 'SELECT CASST(SID AS VARCHAR(50)) AS SID FROM CUSTOMERSLIST'; Open; end; ShowMessage(DataSet.FieldByName('SID').AsString);
SQL Server имеет тип bigint . Это от -2 ^ 63 (-9,223,372,036,854,775,808) до 2 ^ 63-1 (9,223,372,036,854,775,807). Эквивалент Int64 в Delphi