вставка и удаление не происходит в локальной базе данных (.sdf) - PullRequest
1 голос
/ 20 июля 2011

Когда я пытаюсь выбрать значения из локальной базы данных, она выполняется без проблем. Но когда я пытаюсь вставить и удалить, он выполняет запрос, но не влияет на строки.

Это код, который я использую для удаления строки из моей локальной базы данных:

        SqlCeConnection sqlConnection1 = new SqlCeConnection();
        sqlConnection1.ConnectionString = "Data Source = Database1.sdf";

        SqlCeCommand cmd = sqlConnection1.CreateCommand();
        cmd.CommandType = System.Data.CommandType.Text;
        cmd.CommandText = "DELETE FROM table1 WHERE slno=2";
        cmd.Connection = sqlConnection1;

        sqlConnection1.Open();
        cmd.Prepare();
        int aff=cmd.ExecuteNonQuery();//here its returning '0'
        MessageBox.Show(aff.ToString());
        sqlConnection1.Dispose();
        sqlConnection1.Close();

1 Ответ

1 голос
/ 20 июля 2011

Возможно, что удаление не повлияет ни на одну строку.

Кроме того, я бы посоветовал использовать в вашем коде оператор using:

using (SqlCeConnection conn = new SqlCeConnection("Data Source = Database1.sdf"))
using (SqlCeCommand comm = new SqlCeCommand("DELETE FROM table1 WHERE slno = 2", conn))
{
    conn.Open();
    comm.CommandType = CommandType.Text;
    comm.ExecuteNonQuery();
}

Это будетобработать удаление соответствующих объектов для вас.

Если предположить, что SQL относится к вашей базе данных и что вы успешно подключились, используя строку подключения заранее, то приведенное выше может выполнить действие удаления для вашей базы данных.

...