2010-01-07 21 views
17

¿Cómo puedo soltar al usuario de una base de datos sin soltar su registro?¿Quitar usuario de la base de datos de SQL Server?

La secuencia de comandos debe verificar si el usuario existe en la base de datos, si deja de utilizar al usuario.

+0

posible duplicado de [¿Cómo se prueba la existencia de un usuario en SQL Server?] (Http://stackoverflow.com/questions/356000/how-do-y-test-for-the-existence-of -a-user-in-sql-server) – IMSoP

Respuesta

35

¿Es esto lo que estás tratando de hacer?

IF EXISTS (SELECT * FROM sys.database_principals WHERE name = N'username') 
DROP USER [username] 

Si está utilizando SQL Server Management Studio, puede buscar al usuario y hacer clic con el botón secundario en seleccionar eliminar.

+0

¿Cuál es la N aquí N'username '? – zer0w1dthspace

+2

La 'n' solo le dice al servidor sql que el valor de la cadena es unicode. Esto puede evitar problemas para las personas que trabajan en varios conjuntos de caracteres. –

1

Probablemente debería tener un indicador de Descartar/Suprimir en la tabla de usuario que establezca, manteniendo así la integridad referencial si desea mantener la información de registro para ese usuario.

De lo contrario, parece que tendría que eliminar una restricción de clave externa que impide la eliminación actualmente, sin embargo, no lo recomendaría.

Cuestiones relacionadas