Я пытаюсь использовать следующие простые выражения для сервера MySQL:
select cast('2010-01-01' as timestamp)
select cast('2010-01-01' as varchar(55))
и получаю следующую ошибку:
[42000] [MySQL] [ODBC 8.0(w) Драйвер] [mysqld-8.0.13] В вашем синтаксисе SQL есть ошибка;проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с отметкой времени в строке 1 (1064) (SQLExecDirectW)
или
[42000] [MySQL] [Драйвер ODBC 8.0 (w)] [mysqld-8.0.13] У вас ошибка в синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с 'varchar (55))' в строке 1 (1064) (SQLExecDirectW) `` `
Что дает?Разве это не стандартный синтаксис SQL?Если я изменяю timestamp
на datetime
, это работает, и если я изменяю varchar
на char
, это также работает, но я не понимаю, почему я должен это сделать.
Я использую ODBC, Mysql 8 и, насколько я знаю, это работает нормально почти во всех других СУБД?