MS SQL Truncating seconds (and milliseconds) from a datetime

By converting a DateTime to a char(16) the seconds and milliseconds are truncated from the DateTime.

DECLARE @d datetime
SELECT @d = GETDATE()
SELECT @d, CONVERT(CHAR(16), @d, 121)
 
--2012-12-04 11:50:42.160	2012-12-04 11:50