当前位置: 首页 > 面试题库 >

将多行更新到SQL表

晁绍辉
2023-03-14
问题内容

假设有一个完全填充的数据String [n] [3] myData数组

我想做这个:

for (String[] row : myData)
{
   SQL = "update mytable set col3 = row[2]
   where col1 = row[0] and col2=row[1];" 
}

显然,我已经遗漏了很多东西,但是我想尽可能简洁地表达这个想法。

有一个简单的方法可以在单个DB命令中执行此操作吗?一个不太简单的方法怎么样?

编辑:数据不是来自另一个表(这是Web表单提交-多项选择考试)。
由于该应用是面向Web的,因此必须是防注入的。参数化查询是我首选的处理方式。
我正在使用MS-SQL Server 2005

编辑:重新打开,因为这似乎是一个受欢迎的问题


问题答案:

如果使用的是Sql Server,则可以使用SqlBulkCopy。首先,您必须将数据放在DataTable中,这很容易,因为您已经将其存储在字符串数组中。

http://msdn.microsoft.com/zh-
CN/library/system.data.sqlclient.sqlbulkcopy.aspx



 类似资料:
  • < b >想改进这个问题?通过编辑此帖子添加详细信息并澄清问题。 我有一个包含列A,B,C的表。 如果A和B(A和B一起是唯一的)我想更新列C,因此伪代码如下所示: 我该如何用SQL编写?

  • 问题内容: 我创建了一个SQL查询,该查询更新了一个表列,其中另一列=值 代码: 问题出在。如何使其使用这些ID更新列? 问候。 问题答案: 替换为

  • 正如我已经在这里发现的那样 在堆栈溢出上,可以通过执行类似操作来更新一个查询中的多个行 特别感谢@Roman Pekar的明确回答。 现在我正在尝试将这种更新方式与查询NodeJS中的postgreSQL数据库合并。 这是我的代码片段: 我没有得到错误,但它不会更新我的表,我真的不知道这里出了什么问题。可能是查询代码中的语法错误?在NodeJS-pg包中更新时,我没有找到任何具体的多行查询示例

  • 问题内容: 我想在日期基础上更新一行。问题是,由于我的错误,我有两行相同的数据。如何仅在一行上运行更新? 问题答案: 表通常具有唯一的ID。您应该对此进行过滤。 例如, 如果您的表没有唯一的ID,请考虑添加一个:带有和的列。

  • 问题内容: 我有一个表orderDetails,其中包含订单的产品 productId color size quantity 和一桌股票 productId size color stock 订单完成后,我将使用此查询在表格中插入商品 然后我在表上有一个触发器: 通过此触发器,我想减少库存,但是只有第一个产品受到影响,其他数量保持不变。 我想念什么? 谢谢你。 问题答案: 要点是:您假设将为插入

  • 本文向大家介绍SQL Update多表联合更新的方法,包括了SQL Update多表联合更新的方法的使用技巧和注意事项,需要的朋友参考一下 有些时候我们需要同时更新多个表中的数据那么就需要用到下面方法了: (1) sqlite 多表更新方法 这是一个非常简单的批量更新语句 在SqlServer中支持此语法 sqlite中却不支持 sqlite中可转换为 如下语法 (2) SQL Server 多表