Posts

SQL Server 2005: List all databases

List all the databases on SQL Server: ----SQL SERVER 2005 System Procedures EXEC sp_databases EXEC sp_helpdb ----SQL 2000 Method still works in SQL Server 2005 SELECT name FROM sys.databases SELECT name FROM sys.sysdatabases ----SQL SERVER Un-Documented Procedure EXEC sp_msForEachDB 'PRINT ''?'''

Service Unavailable of IIS

Today after installed some Windows patches to the server and reboot, one of a website does not work. It shows "Service Unavailable" when browse it. I try to restart the website but problem still exist. Finally found that the Application Pools cannot start properly because of the AD account used have changed the password.

SQL: Insert custom value into IDENTITY column

SET IDENTITY_INSERT clienttable ON insert into EmployeeTable ... SET IDENTITY_INSERT clienttable OFF

C#: Cannot cast DBNull.Value to type 'System.DateTime'. Please use a nullable type.

Today I got "Cannot cast DBNull.Value to type 'System.DateTime'. Please use a nullable type." error in the C# application. After my trace, it is caused by this line: DateTime? moveOutDate = dt.Rows[0].Field ("MoveOutDate"); You should make it as: DateTime? moveOutDate = dt.Rows[0].Field ("MoveOutDate");

Clear SQL Server Cache

When perform benchmark testing, make sure you need to clean the SQL server cache in order to have a more accurate result. -- Clean all data in the cache DBCC DROPCLEANBUFFERS -- clean cache from stored procedure DBCC FREEPROCCACHE

Display the size of all tables in SQL Server 2005

SET NOCOUNT ON DBCC UPDATEUSAGE(0) -- DB size. EXEC sp_spaceused -- Table row counts and sizes. CREATE TABLE #t ( [name] NVARCHAR(128), [rows] CHAR(11), reserved VARCHAR(18), data VARCHAR(18), index_size VARCHAR(18), unused VARCHAR(18) ) INSERT #t EXEC sp_msForEachTable 'EXEC sp_spaceused ''?''' SELECT * FROM #t -- # of rows. SELECT SUM(CAST([rows] AS int)) AS [rows] FROM #t DROP TABLE #t

Windows Server 2008 64bit Edition SMTP service logging

In Windows Server 2008 64bit edition, SMTP service isn't log even if you enabled the logging. It is found that  you need to install the ODBC Logging module. Install ODBC Logging module (Server Manager > Roles > Web Server (IIS) > Add Role Services > Health and Diagnostics > ODBC Logging) Stop / Start the SMTP Service Verify your SMTP service is configured for logging.  It's not on by default. Try a local telnet test (assuming the telnet client is installed) Look at your log folder. Or, take a look at this from Steve Schofield's blog :