Member 12349103 Ответов: 1

C# winform MS access update Nov.10th коррумпирует мою базу данных


У меня есть winform с базой данных Access, которая хорошо работала до последнего обновления Ms access, которое было вытеснено. Теперь я получаю (запрос " поврежден), у меня нет доступа, чтобы удалить обновление. каков мой следующий шаг?

Набор данных
bindingsource
объект DataTable

некоторый код

Что я уже пробовал:

public Form1()
       {
           InitializeComponent();

           Refresh();
           this.dataGridView1.RowsDefaultCellStyle.BackColor = System.Drawing.Color.Bisque; // datagrid color
           this.dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = System.Drawing.Color.Beige; // datagrid color

           dataGridView1.AutoResizeColumns();
           dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
       }

       private void Form1_Load(object sender, EventArgs e)
       {
           // TODO: This line of code loads data into the 'rosterDataSet.Test_Trial_Roster' table. You can move, or remove it, as needed.
           this.test_Trial_RosterTableAdapter.Fill(this.rosterDataSet.Test_Trial_Roster);
           dataGridView1.AllowUserToAddRows = false;

       }


#region Button Click

       private void btn_New_Click(object sender, EventArgs e)
       {
           try
           {
               //  Edit(true);
               rosterDataSet.Test_Trial_Roster.AddTest_Trial_RosterRow(rosterDataSet.Test_Trial_Roster.NewTest_Trial_RosterRow());
               testTrialRosterBindingSource.MoveLast();
               cb_Role.Focus();
           }
           catch (Exception ex)
           {
               MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
               rosterDataSet.Test_Trial_Roster.RejectChanges();
           }
       }

       private void btn_Save_Click(object sender, EventArgs e)
       {
           try
           {
               //  Edit(false);
               testTrialRosterBindingSource.EndEdit();
               test_Trial_RosterTableAdapter.Update(rosterDataSet.Test_Trial_Roster);
               dataGridView1.Refresh();


               //   maskedTextBox2.Focus();
               MessageBox.Show("You data has been Successfully saved.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
           }
           catch (Exception ex)
           {
               MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
               rosterDataSet.Test_Trial_Roster.RejectChanges();

           }
       }

Patrice T

Почему бы тебе не пожаловаться Мисс ?

j snooze

Эта ссылка может вам помочь.
https://www.devhut.net/2019/11/14/access-bug-error-3340-query-is-corrupt/

1 Ответов

Рейтинг:
7

phil.o

Это не проблема кодирования: последнее обновление ввело ошибку.
Если вы не можете удалить оскорбительное обновление, то единственное, что вы можете сделать, это подождать, пока MS опубликует патч. Или попросите вашего системного администратора либо удалить обновление самостоятельно, либо предоставить вам права на это.
Но, к сожалению для вас, на данный момент нет ничего, что можно было бы сделать в коде, чтобы исправить это.