C# DataGridView 存入 Access数据库问题
请问如何将DataGridview里的数据存入一个新的Access文件?
我的做法是:先用ADOX创建了一个新的数据库文件,然后将DataGridview的数据放入DataTable,再insert到刚建的mdb文件,但是在往里面创建表是老出错,为什么?我的代码如下:
[code=C#][/code]
DataTable dt = new DataTable();
for (int i = 0; i < displayDataGridView.Columns.Count; i++)                 
{
     DataColumn dc = new DataColumn();
     dc.ColumnName = displayDataGridView.Columns[i].HeaderText;
     dt.Columns.Add(dc);
}
for (int i = 0; i < displayDataGridView.Rows.Count - 1; i++)
{
     DataRow dr = dt.NewRow();
     for (int j = 0; j < displayDataGridView.Columns.Count; j++)
     {
         dr[j] = displayDataGridView.Rows[i].Cells[j].Value;
     }
     dt.Rows.Add(dr);
}
string tablename="数据";
ADOX.CatalogClass cat = new CatalogClass();
cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName + ";");                 
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+fileName);
con.Open();  
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = con;
cmd.CommandText = "CREATE  TABLE " + tablename + " (";
for (int i = 0; i < dt.Columns.Count; i++)
{
     cmd.CommandText += dt.Columns[i].ColumnName + "  ";
     cmd.CommandText += "text";
     if (i < dt.Columns.Count - 1)
     cmd.CommandText += ",";
     else
     cmd.CommandText += ")";
}
cmd.ExecuteNonQuery();
最后一句老提示“字段定义语法错误”,请高手指点,谢谢!
------解决方案--------------------遍历datagridview获取数据,添加到datatable  
通过OleDbDataAdapter 更新数据库
------解决方案--------------------你的SQL字符串有错呢
------解决方案--------------------楼主的思路正确。检查下SQL语句
------解决方案--------------------字段名先直接用常量试试,再调试对比着看看。
------解决方案--------------------cmd.CommandText = "CREATE  TABLE " + tablename + " (";
for (int i = 0; i < dt.Columns.Count; i++)
{
   cmd.CommandText += dt.Columns[i].ColumnName + "  ";
   cmd.CommandText += "text";
   if (i < dt.Columns.Count - 1)
   cmd.CommandText += ",";
   else
   cmd.CommandText += ")";
}  
测试下这个字符串,调式的时候把生成的字符串拷贝出来,直接在Access中执行下,看看有没有错误
------解决方案--------------------
CREATE  TABLE 数据 (类型  text,编号  text,日期  text,时间  text,[浓度(%)]  text,[温度(℃)]  text)