我正在编写使用数据库的UWP。我正在使用SQlite将我的应用程序连接到数据库。我的DB太简单了:它有1个表(“BrailleBin”),有2列(“bin”和“id”)。我正在使用.NET库:Microsoft.Data.Sqlite;
问题在于,当我部署应用程序时,这会显示一个错误:错误1:'没有这样的表:BrailleBin'。'。
这是我与DB连接的代码:
using (var transaccion = db.BeginTransaction())
{
var Comando = db.CreateCommand();
Comando.Transaction = transaccion;
for(int j=0; j < texto.ToString().Length; j++)
{
int n = texto[j];
Comando.CommandText = "SELECT BrailleBin.bin FROM BrailleBin WHERE BrailleBin.id = " + n;
var datos = Comando.ExecuteReader();
datos.Read();
textoConcatenado = textoConcatenado + datos.GetString(0);
}
transaccion.Commit();
}
答案 0 :(得分:0)
错误1:&#39;没有这样的表格:BrailleBin&#39;。&#39;
这是因为没有名为&#34; BrailleBin&#34;存在于您连接的数据库中。在使用sqlite的uwp应用程序中,如果您没有对齐数据库的路径,默认情况下,如果数据库不存在,它将尝试在应用程序local folder上查找数据库,它将使用您为数据库连接对齐的数据库名称静默创建一个新的空白数据库。
我没有在应用程序的逻辑中创建数据库。我在SQLite浏览器中创建它并将其复制到应用程序的本地文件夹
由于您没有按代码创建数据库,最可能的原因是应用程序找不到您要连接的数据库,因此它创建了一个新的空白数据库而且没有&# 34; BrailleBin&#34;表
由于您未在此处提供数据库名称,并且您没有显示创建db
的代码行,因此请在创建数据库连接时检查数据库名称是否相同您复制到本地文件夹的数据库。如果它们相同,请检查您是否将数据库复制到正确的位置。默认的本地文件夹路径为C:\Users\{username}\AppData\Local\Packages\{your app package name}\LocalState
。