Bagaimana cara membatalkan penetapan kepemilikan skema db_datareader / db_datawriter?

10

saya bermaksud untuk menetapkan login SQL Server ke

  • db_datareader
  • db_datawriter

peran basis data . Tetapi jika sesaat sakit perut dan kelelahan, saya tidak sengaja memberikan skema pengguna itu sebagai gantinya:

masukkan deskripsi gambar di sini

Mengabaikan sejenak apa artinya secara konseptual bagi pengguna untuk "memiliki" dua skema bawaan tersebut. Dan mengabaikan saat ini jika itu bahkan masalah jika pengguna memiliki dua skema (misalnya jika saya ingin menghapus pengguna akan skema built-in ikut dengannya).

Pertanyaan saya adalah: Bagaimana saya membatalkannya?


saya menekan tombol secara acak di keyboard saya, dan keluar :

ALTER AUTHORISATION ON SCHEMA :: [db_datareader] TO [db_datareader]F5

Tetapi itu tidak melakukan apa-apa; jadi sekarang saatnya berkonsultasi dengan para ahli.

Microsoft SQL Server 2005 - 9.00.5057.00 (Intel X86) 25 Mar 2011 13:50:04 Hak cipta (c) 1988-2005 Microsoft Corporation Standard Edition

Ian Boyd
sumber

Jawaban:

13
alter authorization on schema::[db_datareader] to [dbo]
alter authorization on schema::[db_datareader] to [db_datareader]

alter authorization on schema::[db_datawriter] to [dbo]
alter authorization on schema::[db_datawriter] to [db_datawriter]
Ben Thul
sumber
Mengenai pengeditan Anda, hanya satu dari setiap pasangan yang diperlukan. alter authorizationmengubah kepemilikan surat berharga (dalam hal ini, skema) ke prinsipal yang diberikan. Jadi, apakah Anda ingin dbo memiliki skema (karena mereka ada di database yang saya periksa di sisi saya) atau Anda ingin mereka memiliki sendiri. Pilihannya adalah saling eksklusif (sejauh yang saya tahu).
Ben Thul
1

lakukan hal berikut ini akan membuat pekerjaan Anda mudah: buka SQL Server sebagai akun SA klik pada buat kueri baru dan kueri pukulan terakhir dan klik eksekusi! selesai

alter authorization on schema::[db_datareader] to [dbo]
alter authorization on schema::[db_datareader] to [db_datareader]
alter authorization on schema::[db_datawriter] to [dbo]
alter authorization on schema::[db_datawriter] to [db_datawriter]
alter authorization on schema::[db_securityadmin] to [dbo]
alter authorization on schema::[db_securityadmin] to [db_securityadmin]
alter authorization on schema::[db_accessadmin] to [dbo]
alter authorization on schema::[db_accessadmin] to [db_accessadmin]
alter authorization on schema::[db_backupoperator] to [dbo]
alter authorization on schema::[db_backupoperator] to [db_backupoperator]
alter authorization on schema::[db_ddladmin] to [dbo]
alter authorization on schema::[db_ddladmin] to [db_ddladmin]
alter authorization on schema::[db_owner] to [dbo]
alter authorization on schema::[db_owner] to [db_owner]
MJVM
sumber