sql >> Databasteknik >  >> RDS >> Mysql

sqljocky frågar databasen synkront

Min gissning är att du vill göra något så här (Observera otestad kod):

Future<DBObject> load(DBObject object, String id) {
   var query = "select ... where id='$id'"; // Note: check for SQL injection.
   return pool.query(query)
    .then((result) => result.toList())
    .then((list) => list.forEach((row) => object.import(row)))
    .then((_) => object);
}

Har du läst denna artikel om att använda Futures?

Nyckelpunkten är om en metod är asynkron och anropskoden måste vänta på att den ska slutföras, då måste den returnera ett Future-objekt (eller en Stream i vissa fall). Det finns inget sätt i Dart att få en funktion att "blockera" i väntan på ett asynkront resultat. Ställ gärna några fler frågor i kommentarerna.




  1. Hur man använder AspNet.Identity-kärnan i My SQL-databas

  2. EF6 MySQL StrongTypingException När kolumn inte är PK

  3. Typo3 V6:Hur skapar man en innehållselementbehållare? (utan tv)

  4. Finns det en prestandaskillnad mellan HAVING på alias, kontra att inte använda HAVING