Пожалуйста, я пытаюсь обновить столбец datetime
в SQL базе данных сервера через Python. Например, дата '2020-01-22'
, и когда я обновляю ее с помощью Python, в базе данных столбец обновляется до '1905-06-21'
.
Я попытался использовать параметр datetime
, а также команду T- SQL CAST
для преобразования строки в datetime
, но результат тот же.
Можете ли вы мне помочь? Спасибо.
Это код:
date = '2020-01-22'
cursor.execute("UPDATE Tab3 SET DatRech = CONVERT(datetime, %s, 104)" %date)
df = pd.read_sql_query('Select * from Tab3', conn)
Результат запроса:
DatRech = 1905-06-21
Но когда я использую:
cursor.execute("Update Tab3 set DatRech = CAST('22-01-2020' as datetime)")
или
cursor.execute("Update Tab3 set DatRech = GETDATE()")
это работает.
Дополнительная информация:
import pyodbc
conn = pyodbc.connect('Driver={SQL Server};'
Server=LAPTOP-ON7O00M4\MSSQLSERVER02;'
Database=Teste;' 'Trusted_Connection=yes;')
cursor = conn.cursor()
SQL Версия = Microsoft SQL Сервер 2017