在数据网格索引超出范围异常

问题描述:

在从表单应用程序更新sqlite时使用C#的datagrid我得到索引超出范围异常。在数据网格索引超出范围异常

无法找到表0

下面是我的代码

SQLiteConnection connection4 = new SQLiteConnection 
     (@"Data Source = C:\APTRABuilder.sqlite;Version =3"); 
connection4.Open(); 

string sql2 = "Update table set language1= '" 
       + textBoxUpdate1.Text + "' where language2 = '" 
       + textBox_Search.Text + "'"; 

SQLiteDataAdapter connect4 = new SQLiteDataAdapter(sql2, connection4); 
DataSet ds4 = new DataSet(); 
connect4.Fill(ds4); 
dataGridView.DataSource = ds4.Tables[0]; 

错误我得到的dataGridView.DataSource = ds4.Tables[0];

+1

为什么更新语句会返回数据集? – stuartd

里有DataSet becasue的SQL没有表是干什么的更新,而不是一个SELECT,所以没有结果返回。

您需要查看为您的数据适配器创建UPDATE命令。

您还需要了解如何使用参数添加值。

而不是尝试填充DataAdapter,您需要在此方案中更新DataAdapter。在填充DataAdapter时,您正在填充适配器。要做到这一点你使用一个SELECT命令。这两种方法完全不同。

低于本指南将帮助您更好地了解数据适配器开始: -

http://msdn.microsoft.com/en-us/library/33y2221y.aspx

好运。