【发布时间】:2015-10-10 16:25:07
【问题描述】:
我使用 C# VS2013 和 SQLite 数据库创建了一个小型桌面 [WinForm] 数据插入应用程序。它工作正常,所有的 CURD 操作。但是当我使用 Advance Installer 创建此应用程序的安装程序时。然后每当我运行应用程序并尝试插入数据时,它都会弹出这个屏幕
谢谢..
这是一些代码片段。
//Add Property Function.
string ConnectionString = "Data Source=database/MyProperty.db;Version=3;Read Only=False";
public static long AddPropertyToDatabae( Property property )
{
SQLiteConnection con = new SQLiteConnection( ConnectionString );
SQLiteCommand cmd = new SQLiteCommand
{
Connection = con,
CommandText =
"INSERT INTO Properties (PropertyName,PropertyAddress,PropertyCity,PropertyState,PropertyZip,PropertyNotes)" +
" values (@Name,@Address,@City,@State,@Zip,@Notes)"
};
cmd.Parameters.AddWithValue( "@Name", property.PropertyName );
cmd.Parameters.AddWithValue( "@Address", property.PropertyAddress );
cmd.Parameters.AddWithValue( "@City", property.PropertyCity );
cmd.Parameters.AddWithValue( "@State", property.PropertyState );
cmd.Parameters.AddWithValue( "@Zip", property.PropertyZip );
cmd.Parameters.AddWithValue( "@Notes", property.PropertyNotes );
con.Open();
cmd.ExecuteNonQuery();
// Get the Last Inserted RowId.
cmd.CommandText = "select last_insert_rowid()";
long rowid = ( long )cmd.ExecuteScalar();
con.Close();
return rowid;
}
注意
这是 VS 上的 100% 工作环代码。但它只会在我创建应用程序的设置时产生错误
【问题讨论】:
-
在您的设置应用程序中,您是否正在执行任何创建命令。如果这是一个现有的 SqlLite 文件,您尝试部署它的方式可能存在问题。您可以显示使用代码吗?您能否逐步检查安装程序代码.. 看看您是否可以查明和/或重新创建错误..?
-
没有。我只使用 INSERT 和 SELECT 命令..
-
您必须在插入或选择命令方面做一些事情,您能否为这两个 CRUD 函数显示一些代码...?
-
我会尽快给你看...
-
我已将代码片段添加到您可以检查的问题中......
标签: c# sqlite desktop-application