«Преобразование не удалось при преобразовании даты и / или времени из строки символов». Произошла ошибка при преобразовании из JSON в SQL Server - PullRequest
0 голосов
/ 08 мая 2018

Сейчас я работаю над преобразованием объекта datetime в JSON-массив из нескольких объектов для вставки в SQL-сервер таблицы. Проблема в том, что объект datetime содержит знак часового пояса '+' или '-' и 'T' для следующего времени:

"2018-05-04T10:31:31.134+06:30"

Я бы хотел вставить указанное выше значение непосредственно в DATETIME объект в таблице из SQL Server. В то время ОШИБКА равна

'Преобразование не удалось при преобразовании даты и / или времени из символа строка ".

Я уже пробовал следующим образом.

DECLARE @json NVARCHAR(MAX) = '{"EntryDateTime":"2018-05-04T10:31:31.134+06:30"}';
DECLARE @tmp AS NVARCHAR(MAX)

SET @tmp= CONVERT(datetime2(3), JSON_VALUE(@json,'$.EntryDateTime'))
SET @json = JSON_MODIFY(@json, '$.EntryDateTime', @tmp)

print @json

Но это работает только для одного объекта JSON. Я хотел бы преобразовать формат datetimeoffset массива JSON для нескольких объектов в datetime, например

'[{"EntryDateTime":"2018-05-04T10:31:31.134+06:30"},{"EntryDateTime":"2018-05-05T09:13:00.134+06:30"}]'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...