如何使用数组值更新数据库中的列?
问题描述:
我有一个int
阵列里面有一些值,它的大小是未知的(动态填充)。我想用这个数组更新数据库中的列(即数据库中第n个记录的第m列将用数组的第n个元素更新)。我怎样才能做到这一点?我应该更新的表在一个单独的SQL类似如下每个记录:如何使用数组值更新数据库中的列?
for(int i = 0; i < array.Length; i++)
{
string sqlCommand = "UPDATE TABLENAME SET THECOLUMN = " + array[i] + " WHERE ID = " + (i+1);
// Execute the command
}
,或者是有一个更有效或simplery方式做到这一点?
PS:我用的ACCESS数据库,通过C#它连接到一个(ASP.NET)网站
答
我会做一个往返
StringBuilder command = new StringBuilder();
for(int i = 0; i < array.Length; i++) {
command.Append("UPDATE TABLENAME SET THECOLUMN = " + array[i] +
" WHERE ID = " + (i+1) + ";");
}
// Execute the command HERE
“后退和的Forth”到数据库是相当昂贵的,所以你通常希望你的沟通是“粗鲁不健谈”。