March 31, 2005 at 6:23 am
Is it possible for me to tell which user created a particular table ?
cheers
dbgeezer
March 31, 2005 at 8:59 am
What is the prefix? If it is
SomeUser.MyTable then a login SomeUser created this table.
If it is dbo.mytable than it was a database owner who created this table(see his login in Database Properties under the Owner) or it is any member of sysadmin group. There was a good discussion several days ago and Brian Kelley reminded us that only sysadmin group members create objects as dbo in addition to actual owner
Yelena
Regards,Yelena Varsha
March 31, 2005 at 10:06 am
I would say it can probably be determined, but I don't know what tools out there can perform the analysis. Basically, since everything (should) be logged, the transaction log file contains that data. I don't know if connections are logged and would guess not, so it would get rather dicey as to whether the log file has enough information to track it down. If connections are logged then you could possibly extract a weath of information such as machine name and time of connection. Does anyone happen to know if or to what extent they are logged?
March 31, 2005 at 10:30 am
In addition to the database owner and sysadmin members, a member of the db_ddladmin database role can also create objects with another owner. From BOL 'Create Table':
If the CREATE TABLE statement is executed by a member of the sysadmin fixed server role, or a member of the db_dbowner or db_ddladmin fixed database roles in the database specified by database_name, owner can specify a user ID other than the one associated with the login of the current connection.
Aaron is correct that DDL operations, such as Create Table, are logged. We use Lumigent Log Explorer to extract information about DDL operations, including the user who performed them.
Greg
Greg
Viewing 4 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic. Login to reply