Как получить виртуальные столбцы DateTime с другим json столбцом? - PullRequest
0 голосов
/ 19 января 2020

Заголовок может быть немного запутанным.

У меня есть столбец json, а затем виртуальный столбец под названием AppliedOn, который извлекает указанное значение c из этих данных json, и я Я даю ему тип столбца DateTime.

Это DateTime, сгенерированный из. net DateTime. Ниже приведена соответствующая информация.

ошибка при вставке

Incorrect datetime value: '{
  "AppliedOn": "2020-01-18T22:24:49.8262063Z", <snipped>

Создайте DDL

CREATE TABLE `events` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `event_json` LONGTEXT NOT NULL COLLATE 'utf8mb4_bin',
    `applied_on` DATETIME AS (json_value(`event_json`,'$.AppliedOn')) VIRTUAL,
<snipped>

Я подозреваю, что это связано с указанным c форматом значение столбца? Есть ли способ заставить MariaDB разобрать это правильно, или мне просто нужно использовать формат MariaDB при сериализации?

Я столкнулся с STR_TO_DATE, но я не знаю, как применить его к DDL (если это вообще возможно).

https://mariadb.com/kb/en/str_to_date/

Есть мысли?


edit:

Я просто попробовал с форматом MySQL и получил такую ​​же ошибку

Incorrect datetime value: '{
  "AppliedOn": "2020-01-18 22:43:36", <snipped>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...