對象名 ‘tablename’ 無效的問題 這裏可能會有人遇到對象名 ‘tablename’無效的問題。系統表卻不會產生這個問題,而用戶表還要加上用戶名,然後是表明才能訪問,比如select * from author,會說對象名 author 無效,而用select * from test.author就可以訪問,這個是用戶首選身份的問題。
方法一: 解決很簡單,就是察看test登錄用戶是否具有dbo的權限或者系統管理的權限,有的話去掉就行了。 因爲如果用戶有dbo身份,那麼它登陸後的默認表空間是dbo的系統表空間,所以去掉了之後,就會以正常的test表空間訪問數據表了。
方法二: 將所有test所有表設置爲dbo就OK了
執行語句:exec sp_msforeachtable "sp_changeobjectowner '?','dbo'"