我正在尝试从Windows Phone 8应用程序中的Sqlite3数据库中检索数据。我在项目文件夹中使用了db文件,以下是代码:
SQLiteConnection conn = new SQLiteConnection(Path.Combine(ApplicationData.Current.LocalFolder.Path, "my1stapp.db"), true);
SQLiteCommand sqlCommand = new SQLiteCommand(conn);
sqlCommand.CommandText = "select * from testtable";
List<Task> retrievedTasks = sqlCommand.ExecuteQuery<Task>();
myTextBox.Text = retrievedTasks.ToString();
但是它仍然抛出异常说表测试表没有foud,但表确实存在。此外,db文件属性中的构建操作也更改为content。知道为什么会这样吗?
答案 0 :(得分:0)
尝试以下方法:
SQLiteConnection conn = new SQLiteConnection(Path.Combine(ApplicationData.Current.LocalFolder.Path, "my1stapp.db"), true);
Statement st = SQLite3.Prepare2(conn.Handle, "select * from testtable");
var result = SQLite3.Step(st);
//Check the result value (Row / Done / etc.)
SQLite3.Finalize(st);
conn.Dispose();
您可以在应用/流程的开头创建数据库:
using (var connection = new SQLiteConnection(path))
{
connection.CreateTable<Table1>();
connection.CreateTable<Table2>();
//more tables...
}