用C#在mysql中插入多行的最佳方法?

R0ede

我需要使用C#将多个数据行输入到此MySQL中。 在此处输入图片说明

我在下面有用于插入一行的代码,但是我不确定如何一次处理多行。我最多需要在表中输入8行。我应该让多个构造函数还是有更好的方法?

public class Vo2phases
{
    //properties for vo2max phases
    public int VO2TestID { get; set; }
    public int Phase { get; set; }
    public DateTime Time { get; set; }
    public int Intensity { get; set; }
    public double RER { get; set; }
    public int Borgscale { get; set; }
    public int Pulse { get; set; }

    public Vo2phases(int _vo2testid, int _phase, 
                     DateTime _time, int _intensity, 
                     double _rer, int _borgscale, int _pulse)
    {
        //set parameters for phases
        VO2TestID = _vo2testid;
        Phase = _phase;
        Time = _time;
        Intensity = _intensity;
        RER = _rer;
        Borgscale = _borgscale;
        Pulse = _pulse;
    }

    public void addToDB()
    {
        try
        {
            //prepare for query
            var cmd = MySQL.readyQuery();

            //insert testdata to Vo2test
            cmd.CommandText = "INSERT INTO vo2phases_tb (Vo2_TestID, Phase, Time, Intensity, RER, Borgscale, Pulse) VALUES (@Vo2testid, @phase, @time, @intensity, @rer, @borgscale, @pulse);";

            cmd.Prepare();
            cmd.Parameters.AddWithValue("@vo2testid", VO2TestID);
            cmd.Parameters.AddWithValue("@phase", Phase);
            string TimeString = "00:" + Convert.ToString(Time.TimeOfDay.Hours) + ":" + Convert.ToString(Time.TimeOfDay.Minutes);
            cmd.Parameters.AddWithValue("@time", TimeString);
            cmd.Parameters.AddWithValue("@intensity", Intensity);
            cmd.Parameters.AddWithValue("@rer", RER);
            cmd.Parameters.AddWithValue("@borgscale", Borgscale);
            cmd.Parameters.AddWithValue("@pulse", Pulse);

            cmd.ExecuteNonQuery();

            cmd.Connection.Close();
        }
        catch (MySqlException ex)
        {
            Console.WriteLine(ex.Message);
        }

    }
放置和

您的问题是您似乎只希望代码中有1个Vo2phase。

尽管这在概念上甚至在执行上都不是问题,但由于没有考虑到要提交的集合,因此缺少它。

我会重载,addToDB以便它接受List作为参数。

public void addToDB(List<Vo2phase> phases)
{
    try
    {
        //prepare for query
        var cmd = MySQL.readyQuery();

        //insert testdata to Vo2test
        cmd.CommandText = "INSERT INTO vo2phases_tb (Vo2_TestID, Phase, Time, Intensity, RER, Borgscale, Pulse) VALUES (@Vo2testid, @phase, @time, @intensity, @rer, @borgscale, @pulse);";

        cmd.Prepare();
        foreach (Vo2phase phase in phases)
        {
            cmd.Parameters.AddWithValue("@vo2testid", VO2TestID);
            cmd.Parameters.AddWithValue("@phase", Phase);
            string TimeString = "00:" + Convert.ToString(Time.TimeOfDay.Hours) + ":" + Convert.ToString(Time.TimeOfDay.Minutes);
            cmd.Parameters.AddWithValue("@time", TimeString);
            cmd.Parameters.AddWithValue("@intensity", Intensity);
            cmd.Parameters.AddWithValue("@rer", RER);
            cmd.Parameters.AddWithValue("@borgscale", Borgscale);
            cmd.Parameters.AddWithValue("@pulse", Pulse);

            cmd.ExecuteNonQuery();

            cmd.Parameters.Clear();
        }
        cmd.Connection.Close();
    }
    catch (MySqlException ex)
    {
        Console.WriteLine(ex.Message);
    }

}

现在要构建列表,您只需添加一大堆Vo2phases:

List<Vo2phase> Phases = new List<Vo2phase>
{
    new Vo2phase(VO2TestID = testId, Phase = i ...),
    new Vo2phase(VO2TestID = testId, Phase = i ...),
    new Vo2phase(VO2TestID = testId, Phase = i ...),
    new Vo2phase(VO2TestID = testId, Phase = i ...),
    new Vo2phase(VO2TestID = testId, Phase = i ...),
    new Vo2phase(VO2TestID = testId, Phase = i ...),
    new Vo2phase(VO2TestID = testId, Phase = i ...)

    // add the parameters as you normally would.
};

希望这可以帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在PHP PDO MYSQL中插入多行的最佳方法是什么?

来自分类Dev

使用C#中的主键将行插入数据库的最佳方法是什么

来自分类Dev

插入期间捕获C#中的SQL唯一约束违规的最佳方法

来自分类Dev

SQL Server从C#中的.sql文件插入多行

来自分类Dev

python在mysql中插入60k行的最佳方法

来自分类Dev

在C#中模拟宏的最佳方法?

来自分类Dev

在C#中创建实体的最佳方法

来自分类Dev

使用C#在mysql中插入引号

来自分类Dev

MySQL存储过程从列表中插入多行

来自分类Dev

将多行插入到单行mysql中

来自分类Dev

用C#中的short []数组中的数字创建逗号分隔的字符串的最佳方法是什么?

来自分类Dev

用C#中的short []数组中的数字创建逗号分隔的字符串的最佳方法是什么?

来自分类Dev

使用PHP,在一个MySQL查询中获取多行的最佳方法是什么?

来自分类Dev

C#调用MySQL存储过程,函数的最佳方法

来自分类Dev

将JSON数据插入MYSQL的最佳方法

来自分类Dev

在C#中将动态行数插入SQL Server的最佳方法是什么

来自分类Dev

从C#中的元组获取价值的最佳方法

来自分类Dev

什么是在C#中异步解析CSV文件的最佳方法

来自分类Dev

在C#类中设置值的最佳最短方法

来自分类Dev

在C#中从磁盘读取短数组的最佳方法?

来自分类Dev

在C#中编写多个构造函数重载的最佳方法

来自分类Dev

查找3的C#倍数中的数字的最佳方法

来自分类Dev

这是在C#中即时调用的最佳方法吗

来自分类Dev

从C#中的“托管对象”属性获取值的最佳方法

来自分类Dev

在C#/ MongoDB中更新嵌套数组的最佳方法

来自分类Dev

在C#中存储问卷/答案的最佳方法?

来自分类Dev

使用 C# 在 HTML 文件中搜索值的最佳方法

来自分类Dev

将值插入用逗号分隔的多行中

来自分类Dev

尝试将C#中的变量插入MySQL时出错

Related 相关文章

  1. 1

    在PHP PDO MYSQL中插入多行的最佳方法是什么?

  2. 2

    使用C#中的主键将行插入数据库的最佳方法是什么

  3. 3

    插入期间捕获C#中的SQL唯一约束违规的最佳方法

  4. 4

    SQL Server从C#中的.sql文件插入多行

  5. 5

    python在mysql中插入60k行的最佳方法

  6. 6

    在C#中模拟宏的最佳方法?

  7. 7

    在C#中创建实体的最佳方法

  8. 8

    使用C#在mysql中插入引号

  9. 9

    MySQL存储过程从列表中插入多行

  10. 10

    将多行插入到单行mysql中

  11. 11

    用C#中的short []数组中的数字创建逗号分隔的字符串的最佳方法是什么?

  12. 12

    用C#中的short []数组中的数字创建逗号分隔的字符串的最佳方法是什么?

  13. 13

    使用PHP,在一个MySQL查询中获取多行的最佳方法是什么?

  14. 14

    C#调用MySQL存储过程,函数的最佳方法

  15. 15

    将JSON数据插入MYSQL的最佳方法

  16. 16

    在C#中将动态行数插入SQL Server的最佳方法是什么

  17. 17

    从C#中的元组获取价值的最佳方法

  18. 18

    什么是在C#中异步解析CSV文件的最佳方法

  19. 19

    在C#类中设置值的最佳最短方法

  20. 20

    在C#中从磁盘读取短数组的最佳方法?

  21. 21

    在C#中编写多个构造函数重载的最佳方法

  22. 22

    查找3的C#倍数中的数字的最佳方法

  23. 23

    这是在C#中即时调用的最佳方法吗

  24. 24

    从C#中的“托管对象”属性获取值的最佳方法

  25. 25

    在C#/ MongoDB中更新嵌套数组的最佳方法

  26. 26

    在C#中存储问卷/答案的最佳方法?

  27. 27

    使用 C# 在 HTML 文件中搜索值的最佳方法

  28. 28

    将值插入用逗号分隔的多行中

  29. 29

    尝试将C#中的变量插入MySQL时出错

热门标签

归档