我把数据从sqlserver数据库取出来放到一个dataset里面了,怎么插入到Access数据库里面呢?
解决方案 »
- 问题:rda.submit() 和 rad.push() 的区别和各个的运行机制
- 有什么C#的趣味题没有?
- TextBox+ListBox实现MSDN中的自动匹配功能
- 假如数据库里有这么个字符串:string dd="-LJF-789-111"; “-”是分隔符号,现在我怎么读出 LJF 和 789 和 111 ?
- C# and Oracle9iQQL
- 关于套接字的发送与接收问题
- merge问题
- reader = theSourceFile.OpenText();是什么意思
- .NET高手请进,请教一个关宇页面记录常用功能的实现问题
- 求助 insertrow之后后端获取到的行数不变
- 多线程的困惑
- C#稀奇问题! 读取文本的ReadLine不读一行!各位路过的请帮忙看看!
{
try
{
string sql = "insert into tablename(字段名1,字段名2) values(@值1,@值2)";
System.Data.OleDb.OleDbConnection conn = new OleDbConnection("connstr");
conn.Open();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
System.Data.OleDb.OleDbCommand cmd = new OleDbCommand(sql, oleConn);
cmd.Parameters.Add("@值1", ds.Tables[0].Rows[i][0]);
cmd.Parameters.Add("@值2", ds.Tables[0].Rows[i][2]);
cmd.ExecuteNonQuery();
}
conn.Close();
}
catch (Exception e)
{
throw (e);
}
}
{
try
{
string sql = "insert into tablename(";
for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
{
if (i == 0)
{
sql += ds.Tables[0].Columns[i].ColumnName;
}
else
{
sql +=","+ ds.Tables[0].Columns[i].ColumnName;
}
}
sql += ")Values("; for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
{
if (i == 0)
{
sql +="@"+ ds.Tables[0].Columns[i].ColumnName;
}
else
{
sql += ",@" + ds.Tables[0].Columns[i].ColumnName;
}
}
sql+=")"; //"字段名1,字段名2) values(@值1,@值2)";
System.Data.OleDb.OleDbConnection conn = new OleDbConnection("connstr");
conn.Open();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
System.Data.OleDb.OleDbCommand cmd = new OleDbCommand(sql, oleConn);
for (int j = 0; j < ds.Tables[0].Columns.Count; j++)
{
cmd.Parameters.Add(new OleDbParameter("@" + ds.Tables[0].Columns[i].ColumnName, ds.Tables[0].Rows[i][j]));
}
cmd.ExecuteNonQuery();
}
conn.Close();
}
catch (Exception e)
{
throw (e);
}
}
这个函数的确好用哦~~但是我的表有40个字段哦~~这样写有点太繁琐了
有没有简便一点的方法?或者有没有从sqlserver数据库表中取数据直接插入到access数据库表的方法?2个表的数据结构还是一样的