程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#裡怎樣把一個DataTable的數據追加進數據庫裡的某個表

C#裡怎樣把一個DataTable的數據追加進數據庫裡的某個表

編輯:C#入門知識

C#裡怎樣把一個DataTable的數據追加進數據庫裡的某個表


方法一

 

DataTable table = new DataTable();
            //TODO: init table...
            string connStr = user id= + dbInfo.UserName + ;data source= + dbInfo.DBServerIP + ;persist security info=False;initial catalog= + dbInfo.DatabaseName + ;password= + dbInfo.Password;
            SqlConnection conn = new SqlConnection(connStr);
            conn.Open();
            SqlBulkCopy sqlBulkCopy = new SqlBulkCopy(conn);
            sqlBulkCopy.DestinationTableName = dbInfo.TableName;
            sqlBulkCopy.WriteToServer(table);
            sqlBulkCopy.Close();

方法二

 

 

DataTable table = new DataTable();
            //TODO: init table...

            string connStr = user id= + dbInfo.UserName + ;data source= + dbInfo.DBServerIP + ;persist security info=False;initial catalog= + dbInfo.DatabaseName + ;password= + dbInfo.Password;
            DataTable dt = new DataTable();
            SqlConnection conn = new SqlConnection(connStr);
            SqlCommand cmd = new SqlCommand(string.Format(select * from {0} where 1=2, dbInfo.TableName), conn);
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            SqlCommandBuilder Builder = new SqlCommandBuilder(sda);
            sda.Fill(dt);

            DataRow addRow = null;
            foreach (DataRow row in table.Rows)
            {
                addRow = dt.NewRow();
                for (int i = 0; i < table.Columns.Count; i++)
                {
                    addRow[i] = row[i];
                }
                dt.Rows.Add(addRow);
            }

            sda.Update(dt);


 

總結

1. 只有 Insert ? 那麼用 SqlBulkCopy.
2. Insert/Update/Delete ? 那麼用 DataAdapter.Update.

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved