Вставка значения DATETIME в SQL Сервер с использованием python - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть следующий запрос, который Python использует для вставки значений в базу данных.

INSERT INTO Shift_Info (Login_Date,Machine_Number,Item_Number,Job_Number,Operator,Shift,LogOff_Date,Good_Parts,Total_Run_Time,Effective_Run_Time,Run_Through) 
VALUES (2020-03-16 15:42:21,'CX07',310164,5165877,21952,1,2020-03-16 15:51:06,89,525,525,12)

Но получите первую ошибку при первой записи значения времени в '15'. В чем проблема и какое-либо решение, кроме переформатирования входных данных?

pypyodb c .ProgrammingError: ('42000', "[42000] [Microsoft] [ODB C SQL Драйвер сервера] [SQL Сервер] Неверный синтаксис около '15'. ")

1 Ответ

0 голосов
/ 17 апреля 2020

После прочтения документации по транзакциям - sql https://docs.microsoft.com/en-us/sql/t-sql/data-types/datetime-transact-sql?view=sql-server-ver15

Мне просто нужно заключить в кавычки, чтобы позволить SQL Сервер для анализа строки.

INSERT INTO Shift_Info (Login_Date,Machine_Number,Item_Number,Job_Number,Operator,Shift,LogOff_Date,Good_Parts,Total_Run_Time,Effective_Run_Time,Run_Through) 
VALUES ('2020-03-16 15:42:21','CX07',310164,5165877,21952,1,'2020-03-16 15:51:06',89,525,525,12)
...