В документации по SQLite ADO .Net (sqlite.phxsoftware.com) для метода запроса ExecuteScalar () написано: «Выполните команду и верните первый столбец первой строки набора результатов (если имеется) или ноль, если нет набора результатов был возвращен. Я создал таблицу:
create table users ( id integer primary key, name text )
И выполнил очередь с ExecuteScalar ():
select ( id ) from users where name = @name
Но, очень странно - я не могу привести значение retur к 'int', только к 'long'! Почему так, поле «id» определяется как «целое» в базе данных, а не «bigint»?