forked from softlion/SQLite.Net-PCL2
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathISQLiteApi.cs
More file actions
98 lines (81 loc) · 3.95 KB
/
ISQLiteApi.cs
File metadata and controls
98 lines (81 loc) · 3.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
//
// Copyright (c) 2013 Øystein Krog (oystein.krog@gmail.com)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
using System;
namespace SQLite.Net2
{
public interface IDbHandle { }
public interface IDbStatement
{
object Handle { get; }
}
public interface IDbBackupHandle { }
public interface ISQLiteApi
{
Result Open(string filename, out IDbHandle db, int flags, string zvfs);
ExtendedResult ExtendedErrCode(IDbHandle db);
int LibVersionNumber();
int Threadsafe();
string SourceID();
Result EnableLoadExtension(IDbHandle db, int onoff);
Result Close(IDbHandle db);
Result Initialize();
Result Shutdown();
Result Config(ConfigOption option);
// int SetDirectory(uint directoryType, string directoryPath);
Result BusyTimeout(IDbHandle db, int milliseconds);
int Changes(IDbHandle db);
// Result Prepare2(IDbHandle db, string sql, int numBytes, out IDbStatement stmt, IntPtr pzTail);
IDbStatement Prepare2(IDbHandle db, string query);
Result Step(IDbStatement stmt);
Result Reset(IDbStatement stmt);
Result Finalize(IDbStatement stmt);
long LastInsertRowid(IDbHandle db);
string Errmsg16(IDbHandle db);
// string GetErrmsg(IDbHandle db);
int BindParameterIndex(IDbStatement stmt, string name);
int BindNull(IDbStatement stmt, int index);
int BindInt(IDbStatement stmt, int index, int val);
int BindInt64(IDbStatement stmt, int index, long val);
int BindDouble(IDbStatement stmt, int index, double val);
int BindText16(IDbStatement stmt, int index, string val, int n, IntPtr free);
int BindBlob(IDbStatement stmt, int index, byte[] val, int n, IntPtr free);
int ColumnCount(IDbStatement stmt);
// string ColumnName(IDbStatement stmt, int index);
string ColumnName16(IDbStatement stmt, int index);
ColType ColumnType(IDbStatement stmt, int index);
int ColumnInt(IDbStatement stmt, int index);
long ColumnInt64(IDbStatement stmt, int index);
double ColumnDouble(IDbStatement stmt, int index);
// string ColumnText(IDbStatement stmt, int index);
string ColumnText16(IDbStatement stmt, int index);
ReadOnlySpan<byte> ColumnBlob(IDbStatement stmt, int index);
int ColumnBytes(IDbStatement stmt, int index);
// string ColumnText(IDbStatement stmt, int index);
ReadOnlySpan<byte> ColumnByteArray(IDbStatement stmt, int index);
#region Backup
IDbBackupHandle BackupInit(IDbHandle destHandle, string destName, IDbHandle srcHandle, string srcName);
Result BackupStep(IDbBackupHandle handle, int pageCount);
Result BackupFinish(IDbBackupHandle handle);
int BackupRemaining(IDbBackupHandle handle);
int BackupPagecount(IDbBackupHandle handle);
#endregion
}
}