15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

Arbeiten mit lokalen SQL-Datenbanken in AIR<br />

var conn:SQLConnection = new SQLConnection();<br />

// The database file is in the application storage directory<br />

var folder:File = File.applicationStorageDirectory;<br />

var dbFile:File = folder.resolvePath("DBSample.db");<br />

// open the database<br />

conn.open(dbFile, OpenMode.UPDATE);<br />

// start a transaction<br />

conn.begin();<br />

// add the customer record to the database<br />

var insertCustomer:SQLStatement = new SQLStatement();<br />

insertCustomer.sqlConnection = conn;<br />

insertCustomer.text =<br />

"INSERT INTO customers (firstName, lastName) " +<br />

"VALUES ('Bob', 'Jones')";<br />

insertCustomer.execute();<br />

var customerId:Number = insertCustomer.getResult().lastInsertRowID;<br />

// add a related phone number record for the customer<br />

var insertPhoneNumber:SQLStatement = new SQLStatement();<br />

insertPhoneNumber.sqlConnection = conn;<br />

insertPhoneNumber.text =<br />

"INSERT INTO customerPhoneNumbers (customerId, number) " +<br />

"VALUES (:customerId, '800-555-1234')";<br />

insertPhoneNumber.parameters[":customerId"] = customerId;<br />

insertPhoneNumber.execute();<br />

// commit the transaction<br />

conn.commit();<br />

Sie sehen, dass Sie dieselben Methoden aufrufen, um Datenbankoperationen auszuführen, unabhängig vom<br />

Ausführungsmodus. Der Hauptunterschied zwischen den beiden Ansätzen besteht im Ausführen von Operationen,<br />

die von anderen Operationen abhängig sind, um im Umgang mit Fehlern.<br />

Ausführen einer Operation, die von einer anderen Operation abhängig ist<br />

Adobe AIR 1.0 und höher<br />

Wenn Sie den synchronen Ausführungsmodus verwenden, brauchen Sie keinen Code zu schreiben, der auf ein<br />

Ereignis wartet, um festzustellen, ob eine Operation abgeschlossen ist. Sie können vielmehr davon ausgehen, dass die<br />

Ausführung der Anwendung mit der nächsten Codezeile fortgesetzt wird, wenn eine Operation in einer Codezeile<br />

erfolgreich abgeschlossen wurde. Um eine Operation auszuführen, die vom Erfolg einer anderen Operation abhängig<br />

ist, brauchen Sie den abhängigen Code also nur direkt nach der Operation, von der er abhängig ist, zu schreiben. Wenn<br />

Sie zum Beispiel eine Anwendung anweisen möchten, mit einer Transaktion zu beginnen, eine INSERT-Anweisung<br />

auszuführen, den Primärschlüssel der eingefügten Zeile abzurufen, diesen Primärschlüssel in eine andere Zeile einer<br />

anderen Tabelle einzufügen und die Transaktion abzuschließen, können Sie den gesamten Code als eine Reihe von<br />

Anweisungen schreiben. Diese Operationen werden im folgenden Beispiel veranschaulicht:<br />

Letzte Aktualisierung 27.6.2012<br />

799

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!