Kami baru saja menyalin database SQL 2008 ke server lain, untuk tujuan pengujian. Pengguna biasa yang masuk menggunakan beberapa objek dalam skema tertentu. Katakanlah itu adalah pengguna foo
dan skema bar
.
foo
Skema default adalah bar
pada tingkat instance dan basis data. Namun, ketika foo
masuk tidak dapat menemukan objek dalam bar
skema tanpa menggunakan nama yang sepenuhnya memenuhi syarat.
Mengapa skema default tidak berfungsi di sini?
sumber
Skenario lain di mana masalah ini dapat terjadi (SQL 2008 R2) ...
Saya memiliki pengguna yang ditautkan ke Login Otentikasi SQL, yang saya coba kaitkan dengan skema yang ada. Login tidak memiliki hak sysadmin , jadi solusi di atas tidak membantu.
Saya akhirnya tahu bahwa database masih dikonfigurasi dalam mode kompatibilitas SQL 2000. Mengubah ke SQL 2005 menyelesaikan masalah.
sumber
Ini akan mengasumsikan bahwa skema default pada server baru adalah dbo; Jika skema belum disalin dengan database.
Bukan solusinya tetapi mungkin ini bisa membantu, melihat artikel msdn. http://msdn.microsoft.com/en-us/library/dd283095.aspx
sumber
foo
di server baru. Sudah diatur sepertibar
pada pengguna contoh dan tingkat pengguna basis data.