我现在要将一个dataset插入到数据库,程序没有报错,但是数据缺没能插入到数据库,是什么原因啊,代码如下:                    if (dataSet.Tables[0].Rows.Count > 0)
                    {
                        string strSelect = "select * from dbo.MRPS_CheckObject" ;
                        SqlConnection conn = new SqlConnection(strcon);
                        conn.Open();
                        SqlDataAdapter da = new SqlDataAdapter();
                        SqlCommand cmd = new SqlCommand((strSelect),(SqlConnection)conn);
                        da.SelectCommand = cmd;
                         SqlCommandBuilder cb = new SqlCommandBuilder(da);
                        int b=da.Update(dataSet,dataSet.Tables[0].TableName);
                        conn.Close();
                    }期待高手解答

解决方案 »

  1.   

    插入到数据库?
    没有看到插入数据库的语句哦
    Update是更新的意思,即修改
      

  2.   

    那我应该怎么做,才能将dataset插入到数据库里面呢?
      

  3.   

    你是不是想把dataset里面的内容导入到数据库呀
      

  4.   

    我是要将dataset的数据全部插入到数据库里面
      

  5.   

    我dataset现在有很多行数据,表名,字段名都和数据库里面的一样,请问如何插入到数据库的啊帮个忙啊。在线等
      

  6.   

    foreach(DataTable.Rows)
    一行行导入可以的吧
    http://hi.baidu.com/ppdd521/blog/item/282c06236ce51e4bac34de20.html
      

  7.   


    大哥,一行行插入不太现实额,不是有SqlCommandBuilder能一次插入的吗,我不知道怎么用的额,用的出错了
      

  8.   

    sqldataadapter   我用这个整表导入过   效率和一个一个没多少区别貌似还有sqlbulkcopy 他可以快很多吧 
      

  9.   

    public DataSet CreateCmdsAndUpdate(string connectionString,
        string queryString) 
    {
        using (OleDbConnection connection = new OleDbConnection(connectionString))
        {
            OleDbDataAdapter adapter = new OleDbDataAdapter();
            adapter.SelectCommand = new OleDbCommand(queryString, connection);
            OleDbCommandBuilder builder = new OleDbCommandBuilder(adapter);        connection.Open();        DataSet customers = new DataSet();
            adapter.Fill(customers);        //code to modify data in dataset here        adapter.Update(customers);        return customers;
        }
    csdn上的源码或者
    用sSqlBulkCopy sqlbulkcopy 
    sqlbulkcopy.DestinationTableName = tablename;//数据库中的表名
    sqlbulkcopy.WriteToServer(dataset.Tables[0]);
      

  10.   

     dt.TableName = "dbo.MRPS_CheckObject";
                        if (dt.Rows.Count > 0)
                        {
                            string strSelect = "select * from dbo.MRPS_CheckObject";
                            SqlConnection conn = new SqlConnection(strcon);
                            SqlCommand cmd = new SqlCommand((strSelect), (SqlConnection)conn);
                            if (conn.State !=ConnectionState.Open)
                                conn.Open();
                            SqlTransaction tran = conn.BeginTransaction();
                            cmd.Transaction = tran;
                            SqlDataAdapter da = new SqlDataAdapter(cmd);
                            SqlCommandBuilder cb = new SqlCommandBuilder(da);
                            cb.QuotePrefix = "[";
                            cb.QuoteSuffix = "]";
                            cb.ConflictOption = ConflictOption.OverwriteChanges;
                            da.InsertCommand = cb.GetInsertCommand();
                            da.DeleteCommand = cb.GetDeleteCommand();
                            da.UpdateCommand = cb.GetUpdateCommand();
                            if (conn.State != ConnectionState.Open)
                                conn.Open();
                            int upcount = da.Update(dt);
                            dt.AcceptChanges();
                            tran.Commit();我把代码都贴出来了,请高手看看,哪里有错误啊,怎么就是插入不进去的,程序又不报错
      

  11.   

    sqlbulkcopy.DestinationTableName = tablename;
    sqlbulkcopy.WriteToServer(dataset.Tables[0]);
      

  12.   


    这位大哥,这样能插入重复数据吗?我dataset里面的数据有可能是在数据库中存在的,所以,用这个不能实现吧!