怎么将list<>保存到数据库中

怎么将list<>保存到数据库中,第1张

就是写文件啊,循环list string str = GuidNewGuid()ToString(); string strPath = "C:\\Program Files\\" + str + "xls"; FileStream fs = FileCreate(strPath); StreamWriter sw = new StreamWriter(fs, EncodingUnicode); string strLine = ""; // 写入列标题 for (int i = 0; i < colNamesLength; i++) { string[] col = colNames[i]Split('='); strLine = strLine + col[1]ToString() + ConvertToChar(9); } swWriteLine(strLine); strLine = ""; // 写入报表数据 for (int i = 0; i < dtRowsCount; i++) { // for (int j = 0; j < colNamesLength; j++) { string[] col = colNames[j]Split('='); strLine = strLine + dtRows[i][col[0]]ToString() + ConvertToChar(9); } swWriteLine(strLine); strLine = ""; } swClose(); fsClose();

参考代码及说明如下:

SqlConnection conn = new SqlConnection();

        connOpen();

        SqlTransaction tran = connBeginTransaction();

        try

        {

            foreach()

            {

                string sql="";

                SqlCommand cmd=new SqlCommand(sql,conn,tran);

                SqlParameter[] pars=new SqlParameter[]{

                    new SqlParameter("",value),

                    

                }

                //cmdParameters的AddRange方法是增加一个参数的数组

                cmdParametersAddRange(pars);

                //ExecuteNonQuery()是update,delete ,insert影响行数

                cmdExecuteNonQuery();                    

            }

            tranCommit();

        }catch

        {

            tranRollback();

        }

        finally

        {

            connClose();

        }

直接插入 不就行了嘛 循环取到这个五个值 表建立对应字段

categoryId

categoryName

count

publishAccount

supply

如果你必须要什么id 那就新建一个不是主键的id字段 值就取publishAccount。

要显示的页面设置

<asp:datalist id="MyList" repeatcolumns="2" borderwidth="0" runat="server">

<ItemTemplate>

<table>

<tr>

<td>

<img width=40 height=40 src='<%# DataBinderEval(ContainerDataItem, "ImgId", "Imgaspxid=")%>'>

</td>

</tr>

</table>

</ItemTemplate>

</asp:datalist>

后台代码

OleDbConnection objConn = new OleDbConnection();

objConnConnectionString = @"Provider=MicrosoftJetOLEDB40;Data Source=" + ServerMapPath("Datamdb");

objConnOpen();

OleDbCommand objCmd = new OleDbCommand("select from tbl_Image", objConn);

OleDbDataAdapter da = new OleDbDataAdapter(objCmd);

DataSet ds = new DataSet();

daFill(ds, "aa");

MyListDataSource = dsTables["aa"];

MyListDataBind();

objConnClose();

imgaspx页面代码

int id = intParse(Request["id"]ToString());

OleDbConnection objConn = new OleDbConnection();

objConnConnectionString = @"Provider=MicrosoftJetOLEDB40;Data Source=" + ServerMapPath("Datamdb");

objConnOpen();

OleDbCommand objCmd = new OleDbCommand("select top 1 Image from tbl_Image where ImgId=@id order by ImgId desc",objConn);

objCmdParametersAdd("@id", OleDbTypeInteger);

objCmdParameters["@id"]Value = id;

OleDbDataReader objDr = objCmdExecuteReader();

while(objDrRead())

{

ResponseBinaryWrite((byte[])objDr["Image"]);

}

objDrClose();

objConnClose();

这两种方法总体上 *** 作量是相当的:

第一种连接数据库,查询,连接数据库,执行一定次数的判断和插入

第二种:连接数据库,执行一定次数的查询,一定次数的判断和插入

所以关键就看你执行一次数据库的连接 *** 作和执行一定次数的查询,哪个更快了,这个看你实际情况。可以写个demo 测试下

以上就是关于怎么将list<>保存到数据库中全部的内容,包括:怎么将list<>保存到数据库中、怎么样把一个list集合里面的数据插入数据库、java 遍历List<SupplyListVo>等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存