2

我正在尋找谷歌和stackoverflow,我沒有找到答案,我怎樣才能連接到我的數據庫表通過VS中的連接字符串2010?問題與[SqlException(0x80131904):無效的對象名稱'dbo.TableName'。]

<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' 是圖式,我並不需要它,我怎麼能改變它?

我使用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

+2

歡迎訪問http://Stackoverflow.com。您正在接收此錯誤,因爲您已連接到數據庫,並且正在執行的查詢包含錯誤的表名。請在這裏粘貼一些代碼行作進一步說明,以便有人可以更好地回答你... – 2011-05-16 09:37:30

+0

@Naveed對接,我已更新我的帖子,所以也許現在你可以幫我嗎? – zbarriver 2011-05-16 10:36:02

回答

2

我發現答案,它幫助!

來源:http://blogs.x2line.com/al/articles/155.aspx

MSSQL:變更表中所有者與sp_changeobjectowner以DBO

有時是需要改變數據庫中的所有表要由DBO進行維修或修復了意外資錯誤。 dbo schema擁有的所有表通常是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 
相關問題