July 29, 2003 at 1:20 am
Hi there,
I guess it was too early to answer today's QOD
I choose USER instead of SYSTEM_USER.
From BOL
SYSTEM_USER
Allows a system-supplied value for the current system username to be inserted into a table when no default value is specified.
USER
Allows a system-supplied value for the current user's database username to be inserted into a table when no default value is specified.
Is this the only difference?
Cheers,
Frank
In the subject you can see, that it's still too early
Edited by - a5xo3z1 on 07/29/2003 01:21:58 AM
--
Frank Kalis
Microsoft SQL Server MVP
Webmaster: http://www.insidesql.org/blogs
My blog: http://www.insidesql.org/blogs/frankkalis/[/url]
July 29, 2003 at 2:01 am
One would expect a more reponsible approach to QOD from you Frank.
As an experienced DBA you must try to follow standard procedure in your morning activities:
1. coffee
2. another coffee
3. QOD
Here Down Under we don't see QOD until the afternoon, so I guess I'm all caffeined up and at a distinct advantage.
Cheers,
- Mark
Cheers,
- Mark
July 29, 2003 at 2:05 am
quote:
One would expect a more reponsible approach to QOD from you Frank.As an experienced DBA you must try to follow standard procedure in your morning activities:
1. coffee
2. another coffee
3. QOD
1. coffee ok ...
2. another coffee missed this one. Sh*t
3. QOD I'm a loser, baby
Cheers,
Frank
--
Frank Kalis
Microsoft SQL Server MVP
Webmaster: http://www.insidesql.org/blogs
My blog: http://www.insidesql.org/blogs/frankkalis/[/url]
July 29, 2003 at 5:11 am
If you sign in through QA and try both, you'll see the difference even though BOL is not very clear. If you signin with bknight into your server, and use SYSTEM_USER, it will say bknight. USER will say dbo.
Brian Knight
http://www.sqlservercentral.com/columnists/bknight
Brian Knight
Free SQL Server Training Webinars
July 29, 2003 at 6:27 am
Hi Brian,
quote:
If you sign in through QA and try both, you'll see the difference even though BOL is not very clear. If you signin with bknight into your server, and use SYSTEM_USER, it will say bknight. USER will say dbo.
it was definitely too early.
Cheers,
Frank
--
Frank Kalis
Microsoft SQL Server MVP
Webmaster: http://www.insidesql.org/blogs
My blog: http://www.insidesql.org/blogs/frankkalis/[/url]
July 29, 2003 at 8:00 am
Why not session_user ?
July 29, 2003 at 9:19 am
quote:
Why not session_user ?
Because session_user returns the database user name, not the login name.
July 29, 2003 at 11:11 am
May I know the difference between database user name and log in name? I know the log in name is "sa" or "bknight", but who is "dbo"? Is it something like a user group?
Thanks,
Karen.
July 29, 2003 at 11:31 am
dbo is DataBase Owner. Anyone can be assigned the dbo privilege/permission.
Use Enterprise Manager, drill down to Security. Expand that and select Logins. Right click on a login and select Properties. Go to the Database Access tab and select a database. Look at the list of Roles for the database. You will see db_owner. That's DBO.
-SQLBill
July 29, 2003 at 3:18 pm
Ok, I missed this one too because it was too early and I was in a rush. I'm wondering, though, what's the difference between SYSTEM_USER and SUSER_SNAME()?
Jason
July 29, 2003 at 3:32 pm
I don't think there's any difference. SUSER_SNAME() can be used instead. However, SYSTEM_USER is the more accepted, and might even be something that will work across other database systems.
I think SYSTEM_USER will give consistent results across all SQL versions too.
Cheers,
- Mark
Cheers,
- Mark
July 30, 2003 at 7:56 am
I have used both User_name() and also System_User in different instances. Both functions return the same results for a SQL user account as long as it is mapped same. However, for NT accounts the results may be different. For example an NT account with Sysadmin prevs and also assigned to db_owner database role, the system_user returns NT login (Domain\User) but user_name or user() returns dbo. By definition,
USER_NAME :Returns a user database username from a given identification number.
SYSTEM_USER: Allows a system-supplied value for the current system username to be inserted into a table when no default value is specified
Well the choice of function depends on what one is trying to achieve ? read a login or database user name.
Have a good one
-Sravan
Viewing 12 posts - 1 through 11 (of 11 total)
You must be logged in to reply to this topic. Login to reply