新人求助,导入excel到数据库中的错误

someonebutyou 2017-06-04 07:43:06

想实现excel通过access导入到数据库里,但是运行时会报出这个错误,不知道哪里写错了,求各位大大帮助!
附上源码:
private void button1_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=测试.mdb"); //Jet OLEDB:Database Password=
OleDbCommand cmd = conn.CreateCommand();
conn.Open();


OpenFileDialog fd = new OpenFileDialog();
if (fd.ShowDialog() == DialogResult.OK)
{
string fileName = fd.FileName;
bind(fileName);
}
conn.Close();
}
private void bind(string fileName)
{
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + fileName + ";" +
"Extended Properties='Excel 8.0; HDR=Yes; IMEX=1'";
OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM [sheet1$]", strConn);
DataSet ds = new DataSet();
try
{
da.Fill(ds);
dt = ds.Tables[0];
this.dataGridView1.DataSource = dt;
}
catch (Exception err)
{
MessageBox.Show("操作失败!" + err.ToString());
}
}

private void button2_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=测试.mdb");
OleDbCommand cmd = conn.CreateCommand();
conn.Open();
if (dataGridView1.Rows.Count > 0)
{
DataRow dr = null;
for (int i = 0; i < dt.Rows.Count; i++)
{
dr = dt.Rows[i];
insertToSql(dr,conn);
}
MessageBox.Show("导入成功!");
}
else
{
MessageBox.Show("没有数据!");
}
conn.Close();
}
private void insertToSql(DataRow dr, OleDbConnection conn)
{
string 型号 = dr["型号"].ToString();
string 名称 = dr["名称"].ToString();
string 功能 = dr["功能"].ToString();
string 管脚数 = dr["管脚数"].ToString();
string 管脚定义 = dr["管脚定义"].ToString();
string 芯片介绍 = dr["芯片介绍"].ToString();
string sql = "insert into sheet1 values('" + 型号 + "','" + 名称 + "','" + 功能 + "','" + 管脚数 + "','" + 管脚定义 + "','" + 芯片介绍 + "')";

OleDbCommand abc = new OleDbCommand(sql,conn);
abc.ExecuteNonQuery();


}
...全文
238 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
someonebutyou 2017-06-11
  • 打赏
  • 举报
回复
已经解决了,是语句中的双引号和数据里的双引号混淆,没法识别。
gray55455 2017-06-06
  • 打赏
  • 举报
回复
不是c#的问题,是sql,你监视看看你的sql变量是什么,拿sql到数据库查询工具去查询看看
槛外之人 2017-06-05
  • 打赏
  • 举报
回复
单引号。。。。。
someonebutyou 2017-06-04
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
特殊字符未转义
可以再详细地说一下吗,刚学C#不是很懂
xuzuning 2017-06-04
  • 打赏
  • 举报
回复
特殊字符未转义

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧