"yyyymmdd" é o mais seguro, o formato básico ISO-8601. "aaaa-mm-dd" tem problemas como o link abaixo menciona
Com tempos:"aaaammdd hh:mm:ss"
SQL Server pode ser um pouco estranho ao lidar com datetimes. É principalmente corrigido no SQL Server 2008 com os novos formatos de data e hora. O artigo definitivo de Tibor Karaszi
Edit:E outro artigo de Tony Rogerson para os incrédulos