Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Microsoft.Data.Sqlite используется SQLitePCLRaw для взаимодействия с собственной библиотекой SQLite.
SQLitePCLRaw предоставляет облегченный API .NET поверх нативного API SQLite.
SqliteConnection и SqliteDataReader предоставляет доступ к базовым объектам SQLitePCLRaw, позволяя вызывать эти API напрямую.
В следующем примере показано, как вызвать sqlite3_trace для записи выполненных инструкций SQL на консоль:
// Get the underlying sqlite3 object
var db = connection.Handle;
sqlite3_trace(
db,
(_, statement) => Console.WriteLine(statement),
null);
В следующем примере показан вызов sqlite3_stmt_status, чтобы увидеть, сколько шагов виртуальной машины SQLite содержится в инструкции SQL.
// Get the underlying sqlite3_stmt object
var stmt = reader.Handle;
var steps = sqlite3_stmt_status(
stmt,
SQLITE_STMTSTATUS_VM_STEP,
resetFlg: 0);
Console.WriteLine($"VM operations: {steps}");
Объекты SQLitePCLRaw даже предоставляют указатель на нативные объекты, позволяя выполнять P/Invoke для дополнительных нативных API SQLite.