c#を使用してmysqlに複数の行を挿入する最良の方法は?

R0ede

C#を使用してこのMySQLに複数行のデータを入力する必要があります。 ここに画像の説明を入力してください

1つの行を挿入するためのこのコードを以下に示しますが、一度に複数の行にアプローチする方法がわかりません。テーブルに最大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しか期待していないように見えることです。

これは概念的にも実行においても問題ではありませんが、送信されているコレクションを考慮していないため、問題はありません。

addToDBListをパラメーターとして受け入れるようにオーバーロードします。

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#でSQLServerに動的な数の行を挿入するための最良の方法は何ですか

分類Dev

InversifyJS を使用して関数を挿入する最良の方法

分類Dev

asyncpgで複数の行を挿入する最良の方法

分類Dev

PHPPDOを使用してMySQLに複数の行を持つ複数の配列を挿入する方法

分類Dev

Oracleで複数行の挿入を行う最良の方法は?

分類Dev

PQputCopyDataを使用して複数の行を挿入する方法

分類Dev

Java:PreparedStatementを使用してMySQLに複数の行を挿入する

分類Dev

サブクエリを使用してMySQLに複数の行を挿入する

分類Dev

laravelを使用して複数の配列をmysqlに挿入する方法

分類Dev

CTE(WITH)を使用してpostgresqlに複数の行を挿入する方法

分類Dev

複数のforeachを使用してMYSQLに正しく挿入する方法

分類Dev

mysqlに60k行を挿入するためのPythonの最良の方法

分類Dev

プリペアドステートメントを使用して空白行を挿入せずにMySQLに複数の行を挿入する方法

分類Dev

match..withを使用して、条件付きでシーケンス式に値を挿入する最良の方法は?

分類Dev

LAST_INSERT_ID()MySQLを使用して複数の挿入を行う方法は?

分類Dev

PostgreSQLの関数を使用して複数の行を挿入する方法

分類Dev

MySQLは、ON DUPLICATEKEYを使用して複数の行を挿入/更新します

分類Dev

Python Pandasを使用して列を削除し、列名を挿入するための最良の方法は何ですか?

分類Dev

PHPを使用して、1つのMySQLクエリで複数の行を取得するための最良の方法は何ですか?

分類Dev

JSONデータをMYSQLに挿入する最良の方法

分類Dev

MysqlとPHPを使用して同じ名前の複数の行を挿入する方法

分類Dev

jqueryを使用して複数のdivにデータを入力するデータを送信する最良の方法は?

分類Dev

csvからmysqlに複数の行を挿入し、AJAXを使用して進行状況を確認する

分類Dev

PDOバインドパラメータメソッドを使用して複数行のテキストをmysqlに挿入する方法は?

分類Dev

JdbcTemplateを使用して複数の行を挿入する

分類Dev

VBAを使用してExcelで範囲の最後に行を挿入する方法

分類Dev

Avroを使用してBigQueryに複数の列を持つ行を挿入する

分類Dev

Python 3.6を使用して複数のファイルをメモリに並行してロードする最良の方法は何ですか?

Related 関連記事

  1. 1

    PHP PDO MYSQLに複数の行を挿入する最良の方法は何ですか?

  2. 2

    C#でSQLServerに動的な数の行を挿入するための最良の方法は何ですか

  3. 3

    InversifyJS を使用して関数を挿入する最良の方法

  4. 4

    asyncpgで複数の行を挿入する最良の方法

  5. 5

    PHPPDOを使用してMySQLに複数の行を持つ複数の配列を挿入する方法

  6. 6

    Oracleで複数行の挿入を行う最良の方法は?

  7. 7

    PQputCopyDataを使用して複数の行を挿入する方法

  8. 8

    Java:PreparedStatementを使用してMySQLに複数の行を挿入する

  9. 9

    サブクエリを使用してMySQLに複数の行を挿入する

  10. 10

    laravelを使用して複数の配列をmysqlに挿入する方法

  11. 11

    CTE(WITH)を使用してpostgresqlに複数の行を挿入する方法

  12. 12

    複数のforeachを使用してMYSQLに正しく挿入する方法

  13. 13

    mysqlに60k行を挿入するためのPythonの最良の方法

  14. 14

    プリペアドステートメントを使用して空白行を挿入せずにMySQLに複数の行を挿入する方法

  15. 15

    match..withを使用して、条件付きでシーケンス式に値を挿入する最良の方法は?

  16. 16

    LAST_INSERT_ID()MySQLを使用して複数の挿入を行う方法は?

  17. 17

    PostgreSQLの関数を使用して複数の行を挿入する方法

  18. 18

    MySQLは、ON DUPLICATEKEYを使用して複数の行を挿入/更新します

  19. 19

    Python Pandasを使用して列を削除し、列名を挿入するための最良の方法は何ですか?

  20. 20

    PHPを使用して、1つのMySQLクエリで複数の行を取得するための最良の方法は何ですか?

  21. 21

    JSONデータをMYSQLに挿入する最良の方法

  22. 22

    MysqlとPHPを使用して同じ名前の複数の行を挿入する方法

  23. 23

    jqueryを使用して複数のdivにデータを入力するデータを送信する最良の方法は?

  24. 24

    csvからmysqlに複数の行を挿入し、AJAXを使用して進行状況を確認する

  25. 25

    PDOバインドパラメータメソッドを使用して複数行のテキストをmysqlに挿入する方法は?

  26. 26

    JdbcTemplateを使用して複数の行を挿入する

  27. 27

    VBAを使用してExcelで範囲の最後に行を挿入する方法

  28. 28

    Avroを使用してBigQueryに複数の列を持つ行を挿入する

  29. 29

    Python 3.6を使用して複数のファイルをメモリに並行してロードする最良の方法は何ですか?

ホットタグ

アーカイブ