Mysql
 sql >> база данни >  >> RDS >> Mysql

Странно поведение на подфункцията на генератора на Javascript

subtest1(conn, values) е генератор. yield генериращ обект не изпълнява тялото му. Тоест генерираният генератор остава спрян и ще изисква извикване на next() метод за първия yield да се достигне. Няма явни или неявни извиквания на next() в Примерен код 2 и това е причината conn.query(...) не се изпълнява.

Какво ще кажете за yield* subtest1(conn, values) ? От свързаната страница:

Той все пак ще изпълни subtest мързеливо.

Алтернативно решение е да включите subtest в обикновена функция и връща резултата от conn.query(...) (ако приемем, че трябва да извършите само една заявка):

function subtest1(conn, values) {
    return conn.query("INSERT INTO version SET ?", values);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как mysql подрежда редове със същата стойност?

  2. Използване на COUNT за показване на отделни записи с повече от 2 срещания в MySQL

  3. конвертирайте xml данни в mysql заявка за вмъкване/актуализация с помощта на php

  4. Как да върна обратно извикване на MySQL заявка и да насоча към масив в Node.js?

  5. Не мога да отварям и заключвам таблици с привилегии:Таблица 'mysql.user' не съществува