Разрешение INSERT было отклонено в отношении объекта 'employee_info', схемы базы данных "payroll" dbo

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim myconnection As SqlConnection
        Dim mycommand As SqlCommand
        Dim ra As Integer


        myconnection = New SqlConnection("server=IAI-004;uid=;pwd=;database=payroll")
        myconnection.Open()
        mycommand = New SqlCommand("INSERT INTO employee_info([employee_id],[first_name],[last_name],[middle_name],[email],[telephone],[gender],[status],[date_birth],[hire_date]) values ('" & Employee_idTextBox.Text & "','" & First_nameTextBox.Text & "','" & Last_nameTextBox.Text & "','" & Middle_nameTextBox.Text & "','" & EmailTextBox.Text & "','" & TelephoneTextBox.Text & "','" & GenderTextBox.Text & "','" & StatusTextBox.Text & "','" & Date_birthDateTimePicker.Text & "','" & Hire_dateDateTimePicker.Text & "')", myconnection)
        mycommand.ExecuteNonQuery()
        MessageBox.Show("New Row Inserted" & ra)
        myconnection.Close()
    End Sub

Разрешение INSERT было отклонено на объекте 'employee_info', схеме базы данных "payroll" dbo

как я могу решить эту проблему?

Ответ 1

Вам нужно сделать это (предположительно) в SQL-Server (SSMS).

Щелкните правой кнопкой мыши таблицу на SQL-сервере и дайте пользователю права INSERT.

(...)

  • Щелкните правой кнопкой мыши таблицу
  • Свойства
  • Права доступа
  • (при необходимости) добавить пользователя или роль
  • щелкните по пользователю/роли
  • установите флажок в поле "grant".

BTW - вы можете сделать это через TSQL напрямую, но если у вас есть эта проблема сейчас (вы упоминаете, что вы новичок), то, возможно, сначала начните с графического интерфейса, в соответствии с приведенным выше.

Также - это предполагает, что у вас есть доступ к этому в SSMS. Если вы не DBA/DBO, вам может потребоваться связаться с кем-то...: -)

Ответ 2

Щелкните правой кнопкой мыши на пуле приложений. Нажмите "Дополнительные настройки". Определить идентификацию, Выберите LocalSystem

Это должно выполнить эту работу.

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