DataSet数据能否插入到SQL数据库中的一个表里? DataSet数据能否插入到SQL数据库中的一个表里?用INSERT INTO 的方法能做吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以的,你应该是用到某个对象的updata方法. 但让可以最笨的方法就是历遍dataset的数据,然后insert 同楼上,读DataSet里的数据,然后一行一行插入数据或者更新数据 DataSet myset = new DataSet();string SqlText="";for(int i=0;i<myset.Tables[0].DefaultView.Count;i++){SqlText+="insert into table values("+myset.Tables[0].DefaultView[i]["col1"].ToString()+","+myset.Tables[0].DefaultView[i]["col2"].ToString()+")";}循环之后会得到要执行的sql语句,然后执行哪个sql语句就可以了 这样太麻烦了,如果数据库里表的结构与DATASET里的表的结构相同,可以直接用SqlDataAdapter.Update()方法插入. 用这个对象SqlCommandBuilder的update方法吧,应该可以解决你的问题 DataSet myds = GetDataSet(Sql);if(!((myds.tables.count<=0)||(myds.tables[0].rows.count<=0))){ int i = myds.tables[0].rows.count; for(int j=0;j<=i;j++) { string strSql = "insert into table (a,b,c) values ('"+myds.tables[0].rows[j]["a"].tostring().trim()+"',..........." ExcuteSql(strSql); }} liu,wang所说的方法ms最终还是通过一条一条插入进去的和间接这样写效果一样 当然能了。先把数据放到DATASET中,然后在用一个方法把他INSERT到数据库中就可以了啦 datetable 就可以你把 ds里面的 datatable 那出来adapter.InsertCommand = new SqlCommandBuilder(adapter).GetInsertCommand();adapter.Update(newTable); 哈,楼上各位都是把Dataset当成只有一个表的集合了吧,我个人觉得如果Dataset里的Datatable结构不一样,就不能插到数据库的一个表里Dataset类于本地数据库,能说把数据库插到数据表中吗? gsk99(ZJUT) :太谢谢你了,用你的这样的方法我可以导入了,谢谢 DataSet myDs = new DataSet(); adapter.Fill(myDs,"[Sheet1$]"); string SqlText=""; for(int i=0;i<myDs.Tables[0].DefaultView.Count;i++) { SqlText ="insert into new_phone(phone,createtime) values('"+myDs.Tables[0].DefaultView[i]["phone"].ToString()+"','"+myDs.Tables[0].DefaultView[i]["createtime"].ToString()+"')"; SqlCommand cmd = new SqlCommand(SqlText,conn); try { cmd.ExecuteNonQuery(); } catch { } finally { cmd.Dispose(); } } conn.Close(); 问一个安全配置的问题?还有,我要购买主机,大侠们给点意见 我一回帖就出现这个错误 Repeater分页功能 如何给整个表格设置边框样式呀 请教:如何自动填写并提交表单? treeview问题 如何写一个循环,让里面的数据排列顺序颠倒??~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 如何实现一个txt文本数据绑定datagird并保存到sql数据库中 再弱问一下!!!!!!!!!!!!!!!! 水晶报表求救? system.Web.Mail发送邮件问题 PetShop的下载地址在哪呢?谢谢
最笨的方法就是历遍dataset的数据,然后insert
string SqlText="";
for(int i=0;i<myset.Tables[0].DefaultView.Count;i++)
{
SqlText+="insert into table values("+myset.Tables[0].DefaultView[i]["col1"].ToString()+","+myset.Tables[0].DefaultView[i]["col2"].ToString()+")";
}循环之后会得到要执行的sql语句,然后执行哪个sql语句就可以了
if(!((myds.tables.count<=0)||(myds.tables[0].rows.count<=0)))
{
int i = myds.tables[0].rows.count;
for(int j=0;j<=i;j++)
{
string strSql = "insert into table (a,b,c) values ('"+myds.tables[0].rows[j]["a"].tostring().trim()+"',..........."
ExcuteSql(strSql);
}
}
先把数据放到DATASET中,然后在用一个方法把他INSERT到数据库中就可以了啦
你把 ds里面的 datatable 那出来adapter.InsertCommand = new SqlCommandBuilder(adapter).GetInsertCommand();
adapter.Update(newTable);
Dataset类于本地数据库,能说把数据库插到数据表中吗?
DataSet myDs = new DataSet();
adapter.Fill(myDs,"[Sheet1$]");
string SqlText="";
for(int i=0;i<myDs.Tables[0].DefaultView.Count;i++)
{
SqlText ="insert into new_phone(phone,createtime) values('"+myDs.Tables[0].DefaultView[i]["phone"].ToString()+"','"+myDs.Tables[0].DefaultView[i]["createtime"].ToString()+"')";
SqlCommand cmd = new SqlCommand(SqlText,conn);
try
{
cmd.ExecuteNonQuery();
}
catch
{
}
finally
{
cmd.Dispose();
}
}
conn.Close();