sql >> Databáze >  >> RDS >> Mysql

io.vertx.mysqlclient.MySQLPool.query ().execute se nikdy skutečně nespustí a nic nevrací

Klient Reactive MySQL provádí dotazy asynchronně. Takže pokud si chcete přečíst řádky, které jste vložili, musíte to udělat ve zpětném volání:

client.query("INSERT INTO mytable('id','name') VALUES ('2','Jimis2')").execute { insert ->
    if (insert.succeeded()) {

        var rows = insert.result()
        var lastInsertId = rows.property(MySQLClient.LAST_INSERTED_ID)
        println("Last inserted id is: ${lastInsertId}")

        client.query("SELECT * FROM mytable WHERE id=1").execute { select ->
            if (select.succeeded()) {
                var result = select.result()
                println("Got ${result.size()} rows ")
            } else {
                select.cause().printStackTrace()
            }

            client.close()
        }

    } else {
        insert.cause().printStackTrace()
        client.close()
    }
}



  1. Jak pomocí připraveného příkazu vrátím ID vloženého řádku?

  2. Spouštěč nerozpozná tabulku (spouštěč pro rozdělení obsahu NEW.values ​​do více řádků pro vložení do jiné tabulky)

  3. služba MySQL na místním počítači se spustila a poté zastavila

  4. SQL pro generování seznamu čísel od 1 do 100