public static int sqlite3_prepare_v2( DatabaseHandle db, string zSql, out StatementHandle ppStmt, out string pzTail) { int nByte; var zSqlPtr = MarshalEx.StringToHGlobalUTF8(zSql, out nByte); try { IntPtr pzTailPtr; var rc = sqlite3_prepare_v2(db, zSqlPtr, nByte, out ppStmt, out pzTailPtr); pzTail = MarshalEx.PtrToStringUTF8(pzTailPtr); return(rc); } finally { if (zSqlPtr != IntPtr.Zero) { Marshal.FreeHGlobal(zSqlPtr); } } }
public static string sqlite3_db_filename(DatabaseHandle db, string zDbName) { var ptr = MarshalEx.StringToHGlobalUTF8(zDbName); try { return(MarshalEx.PtrToStringUTF8(sqlite3_db_filename(db, ptr))); } finally { if (ptr != IntPtr.Zero) { Marshal.FreeHGlobal(ptr); } } }
public static int sqlite3_open_v2(string filename, out DatabaseHandle ppDb, int flags, string zVfs) { var filenamePtr = MarshalEx.StringToHGlobalUTF8(filename); var zVfsPtr = MarshalEx.StringToHGlobalUTF8(zVfs); try { return(sqlite3_open_v2(filenamePtr, out ppDb, flags, zVfsPtr)); } finally { if (filenamePtr != IntPtr.Zero) { Marshal.FreeHGlobal(filenamePtr); } if (zVfsPtr != IntPtr.Zero) { Marshal.FreeHGlobal(zVfsPtr); } } }
private void ReleaseNativeObjects() { if (_handle == null || _handle.IsInvalid) { return; } _handle.Dispose(); _handle = null; }
public static extern int sqlite3_changes(DatabaseHandle db);
private static extern int sqlite3_prepare_v2( DatabaseHandle db, IntPtr zSql, int nByte, out StatementHandle ppStmt, out IntPtr pzTail);
private static extern int sqlite3_open_v2(IntPtr filename, out DatabaseHandle ppDb, int flags, IntPtr zVfs);
private static extern IntPtr sqlite3_db_filename(DatabaseHandle db, IntPtr zDbName);
public static int sqlite3_prepare_v2( DatabaseHandle db, string zSql, out StatementHandle ppStmt, out string pzTail) { int nByte; var zSqlPtr = MarshalEx.StringToHGlobalUTF8(zSql, out nByte); try { IntPtr pzTailPtr; var rc = sqlite3_prepare_v2(db, zSqlPtr, nByte, out ppStmt, out pzTailPtr); pzTail = MarshalEx.PtrToStringUTF8(pzTailPtr); return rc; } finally { if (zSqlPtr != IntPtr.Zero) { Marshal.FreeHGlobal(zSqlPtr); } } }
public static extern int sqlite3_changes(DatabaseHandle db);
private static extern int sqlite3_prepare_v2( DatabaseHandle db, IntPtr zSql, int nByte, out StatementHandle ppStmt, out IntPtr pzTail);
public static int sqlite3_open_v2(string filename, out DatabaseHandle ppDb, int flags, string zVfs) { var filenamePtr = MarshalEx.StringToHGlobalUTF8(filename); var zVfsPtr = MarshalEx.StringToHGlobalUTF8(zVfs); try { return sqlite3_open_v2(filenamePtr, out ppDb, flags, zVfsPtr); } finally { if (filenamePtr != IntPtr.Zero) { Marshal.FreeHGlobal(filenamePtr); } if (zVfsPtr != IntPtr.Zero) { Marshal.FreeHGlobal(zVfsPtr); } } }
private static extern int sqlite3_open_v2(IntPtr filename, out DatabaseHandle ppDb, int flags, IntPtr zVfs);
public static string sqlite3_db_filename(DatabaseHandle db, string zDbName) { var ptr = MarshalEx.StringToHGlobalUTF8(zDbName); try { return MarshalEx.PtrToStringUTF8(sqlite3_db_filename(db, ptr)); } finally { if (ptr != IntPtr.Zero) { Marshal.FreeHGlobal(ptr); } } }
private static extern IntPtr sqlite3_db_filename(DatabaseHandle db, IntPtr zDbName);