Impossible d'get des secondes à partir de CURRENT_TIMESTAMP dans le server SQL

Lorsque j'essaie de faire select CURRENT_TIMESTAMP je reçois 2013-09-06 13:55:17.217 sous forme de tableau. Mais quand j'essaie de faire print CURRENT_TIMESTAMP je reçois Sep 6 2013 1:58PM Je ne comprends pas secondes ici. quel est le problème, ai-je fait tort ici?

 SELECT convert(varchar, CURRENT_TIMESTAMP, 113) 

ou

 SELECT FORMAT(CURRENT_TIMESTAMP, 'dd MMM yyyy HH:mm:ss') 

Voir ici pour plus d'options de formation

De PRINT (Transact-SQL)

@ variable locale

Est une variable de tout type de données de caractère valide . @local_variable doit être char, nchar, varchar ou nvarchar, ou doit pouvoir être implicitement converti en ces types de données .

Donc, ce serait juste comme SQL Server convertit implicitement la valeur en VARCHAR / NVARCHAR en PRINT

Jetez un oeil à CAST et CONVERT (Transact-SQL) en utilisant les types de conversion par défaut pour modifier les types de format de sortie.