Добавление оператора WHERE в SQL - PullRequest
0 голосов
/ 03 апреля 2011

Привет, ребята, после помощи в другом посте мне удалось заставить работать следующий оператор Update SQL, однако я хочу добавить WHERE.

Итак, у меня есть:

cmd = new SqlCommand("UPDATE Schedule SET Schd_Avaliable = '" + "No" + "'", con);
        cmd.ExecuteNonQuery();

И я хочу добавить Where, которое ищет Schd_ID в таблице, и schdid, полученное из сеанса, однако со всей пунктуацией, я не уверен, где его поставить.

Вот где я сделал:

WHERE Schd_ID = schdid 

просто неуверен, куда поместить это точно в строке ниже, без ошибки:

cmd = new SqlCommand("UPDATE Schedule SET Schd_Avaliable = '" + "No" + "'", con);
            cmd.ExecuteNonQuery();

Mark

Ответы [ 4 ]

7 голосов
/ 03 апреля 2011

Попробуйте:

 string sql = "UPDATE Schedule SET Schd_Avaliable = 'No' WHERE Schd_ID = @schdid";
 cmd = new SqlCommand(sql, con);
 cmd.Parameters.Add("@schdid", int.Parse(Session["SchdID"].ToString()));
 cmd.ExecuteNonQuery();

Измените, если необходимо, для вашего сеанса и имен столбцов.

3 голосов
/ 03 апреля 2011

В этой ситуации рекомендуется использовать параметры Sql.

cmd = new SqlCommand(@"UPDATE Schedule
                          SET Schd_Avaliable = @ScheduleAvailable
                        WHERE Schd_ID = @ScheduleID", con);
cmd.Parameters.Add(new SqlParameter("@ScheduleAvailable", "No") );
cmd.Parameters.Add(new SqlParameter("@ScheduleID", schdid.ToString()));
cmd.ExecuteNonQuery();
0 голосов
/ 03 апреля 2011
cmd = new SqlCommand("UPDATE Schedule SET Schd_Avaliable = '" + "No" + "' WHERE Schd_ID ='" + schdid + "'", con);
cmd.ExecuteNonQuery();
0 голосов
/ 03 апреля 2011
"UPDATE Schedule SET Schd_Avaliable = '" + "No" + "'" + "WHERE Schd_ID = '" + schdid + '"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...