Я использую библиотеку SQLite .NET для сохранения двойных значений
Это мой псевдокод
// create table t1 (value REAL)
// ... connect to db
var sql = $"insert into t1(value) VALUES ({double.MaxValue:G64})"; // insert into t1(value) VALUES (1.7976931348623157E+308)
using (var command = new SQLiteCommand(sql, con))
{
command.ExecuteNonQuery();
}
Затем я делаю выбор:
// SELECT * FROM t1
// .. connect + query
var d = reader.GetDouble(0);
Но значение d равно double.PositiveInfinity
, а не double.MaxValue
, что может быть причиной такой разницы?