Программа не распознает недавно добавленный столбец - PullRequest
0 голосов
/ 10 июля 2019

Через много месяцев после создания исходной таблицы мне нужно было добавить дополнительный столбец (CB_NRP_Department).Когда я пытаюсь запустить программу, новый столбец не распознается.См. Приведенную ниже процедуру PopulateForm для отображения ошибки.

Я получаю сообщение об ошибке исключения

Столбец CB_NRP_Department не принадлежит таблице Tbl_New_Employee_Database.

Я даже удалил «xsd» New_EmployeesDataSet.xsd из обозревателя решений, а затем заново создал новый источник данных.Я получаю ту же ошибку.Что мне нужно сделать, чтобы программа распознала новый столбец?Чего мне не хватает?

Я проверил орфографические ошибки, проверил источник данных для существующего столбца, проверил, что новый столбец действительно находится в таблице и записан правильно.Я проверяю свойства ComboBox для проверки синтаксических ошибок.Все выглядит хорошо.Аналогичный ComboBox отлично работает.

Поскольку я изменил расположение исходной таблицы с локального диска «C» на сетевой диск, я также дважды щелкнул «Мой проект» для просмотра настроек.Настройки также выглядят корректно:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\nfmfile01\is_db\new_employees\New_Employees.mdb

Поскольку я думал, что программа просматривает неправильную таблицу, я также переименовал все локальные диски «C» «New_Employees.mdb» в «New_Employees_OLD.mdb.

If Not IsDBNull(ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("Dt_NRP_DOB")) Then
    Frm_New_Resident_Physicians.Dt_NRP_DOB.Value = ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("Dt_NRP_DOB")
End If

If ds.Tables.Contains("CB_NRP_Department") Then
    MsgBox("Yep, it's there")
Else
    MsgBox("Nop, Not there!!") '<- I get the Nop, Not there!!
End If

Для следующей строки кода я получаю сообщение об ошибке:

SystemArgumentException: 'Столбец' CB_NRP_Department 'не принадлежит таблице Tbl_New_Employees_Database.

If Not IsDBNull(ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("CB_NRP_Department")) Then
    Frm_New_Resident_Physicians.CB_NRP_Department.Text = ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("CB_NRP_Department")
End If

If Not IsDBNull(ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("Rad_NRP_Needs_Cerner_Credentials_Yes")) Then Frm_New_Resident_Physicians.Rad_NRP_Needs_Cerner_Credentials_Yes.Checked = ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("Rad_NRP_Needs_Cerner_Credentials_Yes")
If Not IsDBNull(ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("Rad_NRP_Needs_Cerner_Credentials_No")) Then Frm_New_Resident_Physicians.Rad_NRP_Needs_Cerner_Credentials_No.Checked = ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("Rad_NRP_Needs_Cerner_Credentials_No")

If Not IsDBNull(ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("CB_NRP_Person_to_Model_After")) Then
        Frm_New_Resident_Physicians.CB_NRP_Person_to_Model_After.Text = ds.Tables("Tbl_New_Employees_Database").Rows(inc).Item("CB_NRP_Person_to_Model_After")
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...