проблема с [SqlException (0x80131904): недопустимое имя объекта 'dbo.TableName'.]

Я искал в google и stackoverflow и не нашел ответа, как я могу подключиться к моей таблице базы данных через эту строку подключения в VS 2010?

<add 
  name="ArticleDBContext" 
  connectionString="Data Source=mssql3.webio.pl,2401;Initial Catalog=db_name;Persist Security Info=True;User ID=db_user;Password=passwd;Pooling=False"
  providerName="System.Data.SqlClient"
 />

Я всегда получаю сообщение об ошибке: проблема с [SqlException (0x80131904): недопустимое имя объекта 'dbo.TableName'.]

Я знаю, что 'dbo' - это SCHEMA, мне это не нужно, как я могу это изменить?

я использую mvc и EntityFramework

и код такой:

в моделях:

public class Article
{
    public int ID { get; set; }
    public string Title { get; set; }
    public DateTime CreateDate { get; set; }
    public string tekst { get; set; }
}

public class ArticleDBContext : DbContext
{
    public DbSet<Article> Articles { get; set; }
}

и в контроллере:

public ViewResult Index()
    {
        return View(db.Articles.ToList());
    }

пример взят с сайта http://www.asp.net/mvc/tutorials/getting-started-with-mvc3-part4-cs


person zbarriver    schedule 16.05.2011    source источник
comment
Добро пожаловать на Stackoverflow.com . Вы получаете эту ошибку, потому что вы подключились к базе данных, а выполняемый вами запрос содержит неправильное имя таблицы. Пожалуйста, вставьте несколько строк кода здесь для дальнейшего разъяснения, чтобы кто-то мог ответить вам лучше...   -  person Naveed Butt    schedule 16.05.2011
comment
@Naveed Butt, я обновил свой пост, так что, может быть, теперь вы можете мне помочь?   -  person zbarriver    schedule 16.05.2011


Ответы (1)


я нашел этот ответ, и это помогло!

источник: http://blogs.x2line.com/al/articles/155.aspx

MSSQL: изменить владельца таблицы на dbo с помощью sp_changeobjectowner

Иногда возникает необходимость изменить все таблицы в базе данных, чтобы они принадлежали dbo, для обслуживания или исправления случайных ошибок. Все таблицы, принадлежащие схеме dbo, обычно являются лучшими практиками разработки приложений баз данных с помощью MSSQL, хотя в реальной жизни мы можем встретить разные подходы...

Следующий небольшой фрагмент кода SQL просматривает все пользовательские таблицы в базе данных и меняет их владельца на dbo. Он использует системную хранимую процедуру sp_changeobjectowner:

DECLARE tabcurs CURSOR
FOR
SELECT 'SOMEOWNER.' + [name]
  FROM sysobjects
 WHERE xtype = 'u'

OPEN tabcurs
DECLARE @tname NVARCHAR(517)
FETCH NEXT FROM tabcurs INTO @tname

WHILE @@fetch_status = 0
BEGIN

EXEC sp_changeobjectowner @tname, 'dbo'

FETCH NEXT FROM tabcurs INTO @tname
END
CLOSE tabcurs
DEALLOCATE tabcurs
person zbarriver    schedule 17.05.2011