C#更新条目并在SQL数据库中传递列

时间:2016-03-07 23:08:33

标签: c# sql database

我需要为数据插入的位置制作代码' Class_1'实际上有3个得分列(Score_1,Score_2,Score_3),因为我正在构建的应用程序要求数据库保留最后三个输入分数的记录。代码的问题在于每次添加数据时都会创建一个新条目,因此我需要程序检查是否在另一个条目中存在First_Name和Last_Name,如果是,则更新该条目,那么我想做的是检查score_1是否存在值,当然如果这是真的,跳过score_1并将数据输入score_2但我对C#全新,所以任何帮助都会非常感激!三江源!

if(inpClassNumber.Text == "Class 1")
{
    con = new SqlConnection(@"Data Source = (LocalDB)\MSSQLLocalDB; AttachDbFilename = C:\Program Files (x86)\Flux Infusion\Projects\Primary School Quiz System\Primary School Quiz System\Scores.mdf; Integrated Security = True");
    con.Open();
    cmd = new SqlCommand("INSERT INTO Class_1 (First_Name,Last_Name,Score_1) VALUES (@First_Name,@Last_Name,@Score)", con);
    cmd.Parameters.AddWithValue("@First_Name", txtFirstName.Text);
    cmd.Parameters.AddWithValue("@Last_Name", txtLastName.Text);
    cmd.Parameters.AddWithValue("@Score", lblScore.Text);
    cmd.ExecuteNonQuery();
}

1 个答案:

答案 0 :(得分:0)

如果您运行的是SQL Server 2008或更高版本,则可以使用MERGE TSQL:

var count = 3;
var sizedArray = Array.apply(null, Array(count));

上述代码会将最新得分保留在Score_1列中,这是Score_2中的第二个得分,依此类推。

Here是TSQL文档的链接。