Ho un database SQL Server 2012 in esecuzione su Amazon EC2. Ho creato un utente per poter creare, modificare e eliminare database. Ho assegnato al nuovo utente dbcreator
un ruolo server.
Il mio utente può connettersi in remoto ed esegue correttamente il create database foo;
comando. Ma quando l'utente tenta di eliminare nuovamente il database con drop database foo;
il comando non riesce con il seguente errore:
Warning: Fatal error 615 occurred at Feb 1 2014 5:15PM.
Note the error and time, and contact your system administrator.
ErrorCode: 21
Anche se il database selezionato è master
(quindi non penso che sia perché è in uso). E il comando ha esito positivo quando lo eseguo di nuovo effettuato l'accesso come utente amministrativo.
Ho controllato il database appena creato e al mio utente è stato assegnato il db_owner
ruolo nel database come mi aspettavo, quindi la mia comprensione è che questo dovrebbe essere autorizzazioni sufficienti per consentire a quell'utente di eliminare il database che ha appena creato.
Secondo http://technet.microsoft.com/en-us/library/ms178613.aspx il ruolo db_owner dovrebbe essere autorizzazioni sufficienti. "Richiede l'autorizzazione CONTROL sul database o l'autorizzazione ALTER ANY DATABASE o l'appartenenza al ruolo predefinito del database db_owner."
Ho cercato l'errore 615 e ho trovato "Impossibile trovare l'ID della tabella del database% d, nome '%. * Ls'." che non ha senso per me. http://technet.microsoft.com/en-us/library/aa937592(v=sql.80).aspx
Informazioni sulla versione del server SQL: Microsoft SQL Server 2012 (SP1) - 11.0.3368.0 (X64) /n May 22 2013 17:10:44 /n Copyright (c) Microsoft Corporation/n Express Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor)/n
- da select @@version
.