
就是写文件啊,循环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>等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)