2012-12-04 15 views
7

Czy istnieje sposób na wykonanie wielu wyciągów w pojedynczej transakcji? Chcę zrobić coś takiego:Jak wykonać wiele instrukcji w Web SQL?

db.transaction(function (tx) { 
    tx.executeSql(
     "CREATE TABLE Foo(ID INTEGER); CREATE TABLE Bar(ID INTEGER)", 
     function (tx, result) { 
      alert("success!"); 
     }); 
    }); 

Ale zamiast tego, jestem znalezieniem muszę zrobić coś takiego zamiast:

db.transaction(function (tx) { 
    tx.executeSql("CREATE TABLE Foo(ID INTEGER)"); 
    tx.executeSql("CREATE TABLE Bar(ID INTEGER)", 
     function (tx, result) { 
      alert("success!"); 
     }); 
    }); 

jestem ograniczone do konieczności wykonania jednostkowych sprawozdań z własnej transakcji a następnie odpalić successFn przy ostatniej transakcji lub czy istnieje sposób, w jaki mogę wykonać wiele wyciągów w pojedynczej transakcji?

Odpowiedz

7

Twój drugi kod już wykonuje wiele instrukcji w pojedynczej transakcji. Pierwszy kod jest nieprawidłowy (nie obsługiwany), ponieważ nie jest jasne, który wynik zwróci wywołanie zwrotne.

Nawet jeśli jest obsługiwana, wydajność jest taka sama, ponieważ wewnętrznie będzie musiała zostać przekształcona w drugie zdanie.

Powiązane problemy