Как исправить ошибку MySQL при вставке данных - PullRequest
0 голосов
/ 23 апреля 2019

Я пытаюсь ввести данные в базу данных mysql, но продолжаю сталкиваться с ошибкой (1064).

+-------------+------------------+------+-----+---------+----------------+
| Field       | Type             | Null | Key | Default | Extra          |
+-------------+------------------+------+-----+---------+----------------+
| meas_id     | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| sensor_id   | int(11)          | YES  |     | NULL    |                |
| svalue      | float            | YES  |     | NULL    |                |
| units       | varchar(20)      | YES  |     | NULL    |                |
| dt_measured | datetime         | YES  |     | NULL    |                |
| lat         | float            | YES  |     | NULL    |                |
| long        | float            | YES  |     | NULL    |                |
+-------------+------------------+------+-----+---------+----------------+

Я пробовал вставить операторы, такие как:

INSERT INTO measurements (sensor_id,svalue,units,dt_measured,lat,long) 
VALUES (223344,22.3344,DEG,2019-07-09T15:46:53-07:00,533244.3,60446.0);

Я думал, что этот оператор вставки будет работать, но я продолжаю сталкиваться с ошибкой.

1 Ответ

1 голос
/ 23 апреля 2019

Вам необходимо заключить строковые литералы в кавычки: 'DEG '

И литералы даты и времени: '2019-07-09 15:46:53'

Также MySQL не принимает формат ISO 8601 для datetime. Он принимает только формат YYYY-MM-DD HH:MM:SS.

См. Документацию:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...