如何将DataSet 的数据全部写入到数据库中

如何将DataSet 的数据全部写入到数据库中,第1张

C#版

using System.Data

using System.Data.SqlClient

.

.

.

//定义DataSet...

DataSet ds = new DataSet()

//用SqlDataAdapter的Fill方法将数据填入ds省略不写。。。如二楼。。。

.

.

.

string strConn = "datasource...." //连接字符串定义

SqlConnection sqlConn = new SqlConnection(strConn)

SqlDataAdapter sqlComm = new SqlDataAdapter()

string default_strComm = "Insert into 表名 values ("

string strComm = default_strComm

//将ds内容回填

//外层循环,表示总共要向该表中插入多少条记录

for(int i =0i<ds.Tables["表名"].Rows.Counti++)

{

//内层循环表示将该行的第几个字段里的值写入Sql的Insert语句

for(int j=0j<ds.Table["表名"].Columns.Countj++)

{

strComm += ds.Tables["表名"].Rows[i].ItemArray.GetValue(j)

}

sqlComm.InsertCommand = new SqlCommand(sqlConn)

sqlComm.InsertCommand.ExecuteNonQuery()//插入一行数据

strComm = default_strComm

}

将DataSet数据集写入数据库:string strConnect = Provider=SQLOLEDB.1Password=1234Persist Security Info=True+User ID=usernameInitial Catalog=MyTempDbData Source=localhostOleDbConnection dbConn = new OleDbConnectiondbConn.ConnectionString = strConnecttry{StringBuilder strXml = new StringBuilder()StringWriter strWriter = new StringWriter( strXml )XmlTextWriter writer = new XmlTextWriter(strWriter)writer.WriteStartDocument()m_dsDataSet.WriteXml(writer)string strSQL = INSERT INTO temp(Temp_date,Temp_data) VALUES(GETDATE(),?)OleDbCommand aCommand = new OleDbCommand( strSQL , dbConn )aCommand.Parameters.Add(Temp_data, OleDbType.VarChar).Value = strXml.ToString()aCommand.Connection.Open()aCommand.ExecuteNonQuery()}catch ( OleDbException e ){Debug.WriteLine(发生异常: + e.ToString())}从数据库中读出DataSet数据集:// 这里省略千篇一律的数据库的Query *** 作OleDbDataReader aReader = aCommand.ExecuteReader( )if (aReader.Read() ){StringBuilder strXml = new StringBuilder( aReader[temp_data].ToString() )StringReader strReader = new StringReader( strXml.ToString() )XmlTextReader reader = new XmlTextReader(strReader)try{m_dsDataSet.ReadXml(reader)aReader.Close( )}catch( OleDbException e ){Debug.WriteLine(发生异常: + e.ToString())}}注意以上例子所引用的变量m_dsDataSet的原始定义为DataSet m_dsDataSet,在这里是一个作者自定义包含有两个表和记录的DataSet实例,其中的记录来源于搜索引擎分析出的每条记录。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/sjk/6780233.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-28
下一篇2023-03-28

发表评论

登录后才能评论

评论列表(0条)

    保存