Ошибка неверного имени объекта Asp.net при выполнении запроса на SQL Server 2008 - PullRequest
0 голосов
/ 03 ноября 2011

Я пытаюсь выполнить запрос, например:

SqlCommand putuser = new SqlCommand("INSERT INTO MainDB(NumberofEmployees) VALUES(4)", cn);

putuser.ExecuteNonQuery();

Я получаю ошибку Invalid name name для таблицы с именем MainDB. Я проверил следующее:

  1. Запрос работает при запуске его в базе данных.
  2. Я подключен к правильной базе данных.
  3. В базе данных есть таблица с именем.

Я использую проверку подлинности с помощью форм. Как мне сделать так, чтобы любой, кто имеет доступ к приложению, мог сделать эту вставку в Базу данных. Вставка изначально происходит после создания пользователя.

1 Ответ

0 голосов
/ 03 ноября 2011

Используете ли вы строку подключения с проверкой подлинности Windows или SQL Server?

Если вы используете аутентификацию SQL Server, используйте:

<add name="ConnectionString" 
     connectionString="Data Source=127.0.0.1; Initial Catalog=DataBase;Persist Security Info=True;User ID=user; Password=password

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

Если вы используете аутентификацию Windows, используйте

<add name="ConnectionString" 
     connectionString="Data Source=127.0.0.1; Initial Catalog=DataBase;Trusted_Connection=Yes;Persist Security Info=True;"/>

тогда вам нужно убедиться, что пользователь, которого вы используете в App_Pool (учетная запись Windows, которая запускает приложение), добавлен в качестве логина / пользователя в базе данных и имеет права на выполнение запросов.

EDIT

Вы можете использовать SQL Server Management Studio для этого, пошаговые инструкции можно найти здесь и здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...