Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Microsoft.Data.Sqlite używa SQLitePCLRaw do interakcji z natywną biblioteką SQLite.
SQLitePCLRaw udostępnia cienki interfejs API platformy .NET za pośrednictwem natywnego interfejsu API SQLite.
SqliteConnection i SqliteDataReader zapewniają dostęp do bazowych obiektów SQLitePCLRaw, umożliwiając bezpośrednie wywoływanie tych interfejsów API.
W poniższym przykładzie pokazano, jak wywołać sqlite3_trace, aby zapisać wykonane instrukcje SQL na konsolę.
// Get the underlying sqlite3 object
var db = connection.Handle;
sqlite3_trace(
db,
(_, statement) => Console.WriteLine(statement),
null);
W poniższym przykładzie pokazano użycie funkcji sqlite3_stmt_status aby zobaczyć, ile kroków maszyny wirtualnej SQLite wykona instrukcję SQL skompilowaną do:
// 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}");
Obiekty SQLitePCLRaw udostępniają nawet wskaźnik do obiektów natywnych, umożliwiając P/Invoke dodatkowych natywnych interfejsów API SQLite.