Я буквально в тупик. Я провел два дня, работая над этим. Я пробовал прокручивать интернет, но, похоже, ничего из того, что я пробовал, не работало, как блоки try / catch, используя и т. Д.
Так что вот так ..
У меня есть веб-приложение asp c #, которое подключено к базе данных sql, которую я написал в Visual Studio 'Database.mdf'.
База данных содержит несколько футболистов и их данные, я хочу иметь возможность обновлять и удалять эти данные, однако мои команды sql не вступают в силу (я новичок в этом, так что это, вероятно, что-то нелепо простое для большинства Вы, но тем не менее)
У меня есть несколько кнопок, с помощью которых я сортирую данные на экране по порядку. Они отлично работают, я просто использую для этого статическую переменную. Однако методы, которые я написал для команд SQL, не работают для меня. Методы также вызываются на Button_Click, но в случае Update / Delete ничего не меняется, это как если бы SQL-запрос никогда не обновлял базу данных
Пожалуйста, если вы знаете, как я могу это исправить, дайте мне знать. Моя голова жареная.
Вот несколько методов, включая отображение данных:
protected void Page_Load(object sender, EventArgs e)
{
string str = "Data Source=(LocalDB)\\MSSQLLocalDB;AttachDbFilename=\"C:\\Users\\David\\Desktop\\WebApplication5\\WebApplication5\\App_Data\\Database2.mdf\";Integrated Security=True";
cn = new SqlConnection(str);
cn.Open();
mycount();
displayData();
// updateData();
// deleteData();
}
protected void mycount()
{ // count no of els in table
max = 0;
var cmd = cn.CreateCommand();
cmd.CommandText = sqlQuery;
var reader = cmd.ExecuteReader();
while (reader.Read()) max++;
reader.Close();
}
protected void displayData()
{
var cmd = cn.CreateCommand();
cmd.CommandText = sqlQuery;
var reader = cmd.ExecuteReader();
for (int i = 0; i < count; i++) reader.Read();
TextBox1.Text = "" + reader[0];
TextBox2.Text = "" + reader[1];
TextBox5.Text = "" + reader[2];
TextBox6.Text = "" + reader[3];
TextBox7.Text = "" + reader[4];
TextBox8.Text = "" + reader[5];
reader.Close();
}
protected void updateData()
{
var cmd = cn.CreateCommand();
string query = "UPDATE [Footballer] SET [Appearances] = @appear , [NumberOfGoals] = @goals Where [PlayerName] = @name ";
cmd.CommandText = query;
int appear = int.Parse(TextBox6.Text);
int goals = int.Parse(TextBox8.Text);
string name = TextBox1.Text;
cmd.Parameters.AddWithValue("@Player_ID", name);
cmd.Parameters.AddWithValue("@app", appear);
cmd.Parameters.AddWithValue("@goals", goals);
cmd.ExecuteNonQuery();
}
protected void deleteData()
{
string searchName = TextBox4.Text;
TextBox1.Text = "Deleted";
TextBox2.Text = "Deleted";
TextBox5.Text = "Deleted";
TextBox6.Text = "Deleted";
TextBox7.Text = "Deleted";
TextBox8.Text = "Deleted";
var cmd = cn.CreateCommand();
string query = "Delete from [Footballer] where [PlayerName] = @PlayerName_ID";
cmd.CommandText = query;
cmd.Parameters.AddWithValue("@PlayerName_ID", searchName);
cmd.ExecuteNonQuery();
}
Вот экран того, что я получил визуально, если это поможет:
Gui View