У меня есть стол под названием Город, который содержит связь между зданиями игроков и игроков.Таблица имеет следующие столбцы: userid (int) номер buildingid (int) (int)
Я успешно вставил новое здание для игрока, и теперь у меня возникают проблемы с обновлением определенной строки для игрока.*
У меня есть этот код:
if (!existPlayerBuilding(userid, buildingid))
{
SqlConnection sqlcon = new SqlConnection(connectionString);
string query = "INSERT INTO Town VALUES(@userid, @buildingid, @number)";
SqlCommand sqlcom = new SqlCommand(query, sqlcon);
sqlcom.Parameters.Add("@userid", userid);
sqlcom.Parameters.Add("@buildingid", buildingid);
sqlcom.Parameters.Add("@number", number);
try
{
sqlcon.Open();
sqlcom.ExecuteNonQuery();
sqlcon.Close();
}
catch (Exception i)
{
lblTestlabel.Text = "SQL FEILET";
}
lblTestlabel.Text = "Bygningen ble kjøpt!!!!";
}
else
{
SqlConnection sqlcon = new SqlConnection(connectionString);
string query = "UPDATE Town VALUES(@userid, @buildingid, @number) WHERE userid = @userid AND buildingid = @buildingid";
SqlCommand sqlcom = new SqlCommand(query, sqlcon);
sqlcom.Parameters.Add("@userid", userid);
sqlcom.Parameters.Add("@buildingid", buildingid);
sqlcom.Parameters.Add("@number", number);
try
{
sqlcon.Open();
sqlcom.ExecuteNonQuery();
sqlcon.Close();
}
catch (Exception i)
{
lblTestlabel.Text = "SQL FEILET";
}
lblTestlabel.Text = "Bygningen ble kjøpt!!!!";
}
Метод existPlayerBuilding возвращает true, если у игрока уже есть здание с данным идентификатором, и false в противном случае.Когда я запускаю и проверяю, могу ли я обновить номер для пользователя, ничего не происходит.