This is not asking how to convert an arbitrary string to datetime in MSSQL such as this question.
I can control the string format but I want to know what the MSSQL syntax is for updating a datetime field using a date string.
This is not asking how to convert an arbitrary string to datetime in MSSQL such as this question.
I can control the string format but I want to know what the MSSQL syntax is for updating a datetime field using a date string.
Seems that this is answered very adequately by Tibor Karaszi. For instance you can use
update tablename set datetimefield='19980223 14:23:05'
update tablename set datetimefield='02/23/1998 14:23:05'
update tablename set datetimefield='1998-12-23 14:23:05'
update tablename set datetimefield='23 February 1998 14:23:05'
update tablename set datetimefield='1998-02-23T14:23:05'
Refer to Tibor's page for a full discussion. You need to be careful of day/month order since this will be language dependent when the year is not specified first. If you specify the year first then there is no problem; date order will always be year-month-day.
UPDATE MyTable SET MyDate = CONVERT(datetime, '2009/07/16 08:28:01', 120)
For a full discussion of CAST and CONVERT, including the different date formatting options, see the MSDN Library Link below: