SQL Server Status
In SQL Server 2000 you could query the sysdatabases table to find out the "status" of a database. This field was actually a bit mask and the sysdatabases table is only available in SQL Server 2005 for backwards compatability. The sysdatabases table "maps" to the sys.databases system view. The old sysdatabases "status" column now spans multiple columns in the new sys.databases system view...
sysdatabases
sys.databases
1 = autoclose (ALTER DATABASE)
is_auto_close_on
4 = select into/bulkcopy (ALTER DATABASE using SET RECOVERY)
log_reuse_wait
8 = trunc. log on chkpt (ALTER DATABASE using SET RECOVERY)
log_reuse_wait
16 = torn page detection (ALTER DATABASE)
page_verify_option
32 = loading
state
64 = pre recovery
state
128 = recovering
state
256 = not recovered
state
512 = offline (ALTER DATABASE)
state
1024 = read only (ALTER DATABASE)
is_read_only
2048 = dbo use only (ALTER DATABASE using SET RESTRICTED_USER)
user_access
4096 = single user (ALTER DATABASE)
user_access
32768 = emergency mode
state
4194304 = autoshrink (ALTER DATABASE)
is_auto_shrink_on
1073741824 = cleanly shutdown
is_cleanly_shutdown
...if I've got any wrong please let me know.
Link to mapping SQL Server 2000 system tables to SQL Server 2005 system views http://msdn2.microsoft.com/en-us/library/ms187997.aspx.