C# 请问怎么在更新数据库时候调用line与rows,其中rows在另一个名为DBHelper的类中
可否将第一张图片中的完整方法和最后一张图片的完整方法都发上来,个人感觉应该是变量作用域的问题,或者是提升作用域,再或者是把当前的方法修改一下,将line和rows作为参数传入该方法进行处理。
按照你的问题描述,写了一个简单的示例,希望对你有帮助:
using System;
namespace ConsoleApp1
{
internal class Program
{
private static void Main(string[] args)
{
var lines = new[] { "one", "two" };
var dBHelper = new DBHelper();
for (var i = 0; i < lines.Length; i++)
{
var line = lines[i];
if (line == "") continue;
var rows = dBHelper.ExecuteCommand(
"UPDATE szyq_wms.core_outbound_main SET fk_consignee_name='村田上海超诚' WHERE fk_vender_abbrev='村田(APS)' AND vender_order_no='" +
line + "'");
if (rows > 0)
dBHelper.ExecuteCommand(
"UPDATE szyq_cds.murata_aps_shanghai SET is_update =1 WHERE picking_note_no='" + line + "'");
}
Console.ReadKey();
}
}
public class DBHelper
{
public int ExecuteCommand(string sql)
{
// 这里是你的逻辑代码
// MySqlConnection connection = ...
// 这里是你的逻辑代码
// MySqlCommand command = ...
var rows = 0;
// 这里是你的逻辑代码
// rows = command.ExecuteNonQuery();
return rows;
}
}
}
for循环里面调用DB执行更新操作返回rows,并且for循环里就是有line,你需要引入DB的文件