2012-10-29 27 views
9

Sto usando questo codice per creare un nuovo utente.Creare un utente per SQL Server 2008?

/****** Object: User [primebox] ******/ 
IF NOT EXISTS (SELECT * FROM sys.database_principals WHERE name = N'primebox') 
CREATE USER [primebox] FOR LOGIN [primebox] WITH DEFAULT_SCHEMA=[primebox] 
GO 

e ho ricevuto il seguente errore quando provo a creare questo utente specifico.

Msg 15007, Level 16, State 1, Line 1
'primebox' is not a valid login or you do not have permission.

La parte che non capisco è, posso creare altri utenti, ma questo in particolare sembra non valida

ho provato a cambiare titolo il mio database e ottenuto questo errore

Unable to rename primeboxs. (ObjectExplorer)

Rename failed for Database 'primebox'. (Microsoft.SqlServer.Smo)

An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

The database could not be exclusively locked to perform the operation. (Microsoft SQL Server, Error: 5030)

La mia ipotesi è che il problema sia il nome del database ... ma ho ottenuto il codice da un altro database (sto creando un backup "voglio essere") con gli stessi nomi di utenti e database. Quindi sono in un angolo qui ... Qualsiasi aiuto sarà molto apprezzato =)

PS: Il mio nome computer non è, Windows 7. Utilizzo di SQL Server 2008

risposta

9

In SQL Server, gli utenti sono diversi ai login

Per creare un utente per un database, dovete prima creare un account di accesso per il server utilizzando la sintassi di create login

21

account di accesso sono cose diverse rispetto agli utenti, ecco come creare un nuovo account di accesso.

  1. clic destro SQL Server Management Studio e selezionare -> Esegui come amministratore.

  2. Effettuare il login normalmente con l'autenticazione di Windows predefinita.

  3. Scegliere Database -> Database di sistema -> master. Fai clic sul pulsante "Nuova query" in alto a sinistra.

  4. Incolla qui questa query. (Per ulteriori informazioni SQL opzioni d'accesso see here):

    CREATE LOGIN youruser WITH PASSWORD = 'yourpassword' 
    
  5. Si dovrebbe ottenere questa risposta:

    Command(s) completed successfully. 
    
  6. Controllare per assicurarsi che ha ottenuto aggiunto al dbo.syslogins

    select * from master.dbo.syslogins 
    
  7. Chiudi e riavviare il server SQL Management (come amministratore) e riavviare SQL Server stesso andando al pannello Configurazione SQL Server e facendo clic su riavvia.

  8. Nell'oggetto explorer fare clic su EL-PC \ SQLEXPRESS principale -> Sicurezza -> Login.

  9. Il login appena creato dovrebbe essere lì, fare clic con il tasto destro del mouse e andare alle proprietà, è necessario concedere a quell'utente il permesso di visitare il database predefinito e impostare un database predefinito.

  10. Chiudere SQL Server e accedere nuovamente con l'opzione Autenticazione SQL Server e nome utente/password. Ora dovresti essere connesso con il tuo nuovo utente.

Come creare un nuovo utente

  1. Avviare SQL Server Management Studio come amministratore.
  2. Espandere il database su cui si desidera creare il nuovo utente del database.
  3. Fare clic con il pulsante destro del mouse sulla cartella "Sicurezza", selezionare "Nuovo utente", se l'opzione non è disponibile è stato probabilmente fatto clic sulla cartella di sicurezza del server.
  4. Aggiungere il nome e le configurazioni e fare clic su OK.
+0

può fornire maggiori dettagli su come per eseguire il passaggio 9? – chathwind

3

Inoltre è possibile creare un nuovo account di accesso anche da interfaccia utente di SQL Server Management Studio facendo clic sulla cartella principale di sicurezza enter image description here

e dopo aver creato l'utente

Problemi correlati