Is there is a way that from it I can know if the user(not the login) is already created in the database? I mean the user not the login, since, I know how to check for the login. I need to check for the user that is created inside a specific DB & a role assigned to it.
This is the code for checking for the login:
SELECT name FROM sys.server_principals WHERE name = 'test_user'
but how about the user? Since I need to create the user and assign a role to it if its not created. Otherwise, I will continue without creating.
Thanks
First, move to “Object Explorer” and expand the database that you want. Next, under the database, expand the “Security” directory. Now, under Security, expand the “Users” option. This will display a list that contains all the users created in that database.
If you need to check if a login exists in SQL Server , you can use query the master. dbo. syslogins for it.
In SQL Server Management Studio, right click on Server, choose "Activity Monitor" from context menu -or- use keyboard shortcut Ctrl + Alt + A .
SQL Server: Find Users in SQL Server Answer: In SQL Server, there is a system view called sys. database_principals. You can run a query against this system view that returns all of the Users that have been created in SQL Server as well as information about these Users.
How about:
USE (your database you want to check the user's existence in) SELECT * FROM sys.database_principals WHERE name = '(your user name to check here)'
sys.server_principals
shows you the logins defined on the server level - sys.database_principals
shows you the principals (e.g. user accounts) on a database level.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With