2012-10-09 16 views
1

我的问题是我无法使用C#将数据插入到SQLite中。不过,我可以选择记录并使用数据集进行检索。 SQLite数据库文件包含在解决方案目录,并建立SQlite的文件的操作属性设置在Visual Studio 2008中的C#代码为“嵌入的资源”如下:无法在C#中使用SQLite插入数据

private void button2_Click(object sender, EventArgs e) 
    { 
     SQLiteConnection con = new SQLiteConnection("Data Source=MonitoringDB.s3db;Version=3;New=True;Compress=True;Synchronous=Off"); 
     SQLiteCommand cmdinsert = new SQLiteCommand("Insert into Parameters(Id,Day,Time,Parameter) values(1,1,1,15) ", con); 
     con.Open(); 
     cmdinsert.ExecuteNonQuery(); 
     con.Close(); 
    } 

是什么错我的代码?

+3

你有什么异常吗? –

+2

你有什么错误或例外? – Oded

+0

该文件中是否有密码? –

回答

4

由于数据库嵌入在EXE文件中,因此无法插入。并且您无法更改嵌入的资源。您可以做的是考虑在启动时将资源复制到磁盘,如果它尚不存在并在该副本上工作。

+0

那么我应该将我的数据库文件放在另一个文件夹中? – idrisjafer

+1

将数据库文件的'Build Action'更改为'Content'并将'Copy to Output Directory'更改为'Copy if newer',这会将数据库复制到输出文件夹(编译好的exe文件所在的位置),您可以使用文件(插入/选择/删除)。 – Nasreddine

相关问题