Неверно сформированный коммуникационный пакет в mysql, если используется команда выполнения запроса с ST_GeomFromGeoJSON - PullRequest
0 голосов
/ 03 апреля 2020

В настоящее время я сталкиваюсь с ошибкой

{
  "message": "Malformed communication packet.",
  "code":"ER_MALFORMED_PACKET","errno":1835,"sqlState":"HY000","sqlMessage":"Malformed communication packet."
}

, если я заменю .query на .execute в

let query = 'INSERT INTO table (_id, location,size) ' +
        'VALUES (UUID_TO_BIN(?,1), ST_GeomFromGeoJSON( \'{"type":"Point","coordinates":[ ? , ? ]}\'),?)'
      res = await mysql.execute(query, [id, location.longitude, location.latitude, size])

Поскольку этот запрос вызывается много раз, я пытался использовать вместо выполнения запрос execute , Я уже понял, что:

let query = 'INSERT INTO table (_id, location,size) ' +
        'VALUES (UUID_TO_BIN(?,1), ST_GeomFromGeoJSON( \'{"type":"Point","coordinates":[ 10,50 ]}\'),?)'
      res = await mysql.execute(query, [id, size])

отлично работает. Есть ли способ использовать execute?

Я использую: mysql2 (nodejsClient): 2.1.0 mysql: 8.0.19

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