SQLite
 sql >> Datenbank >  >> RDS >> SQLite

Android - Wie kann ich Daten in Bezug auf zwei Tabellen an die Einfügemethode eines Inhaltsanbieters übergeben

Sie sollten ContentProviderOperation verwenden. Da es Ihr ContentProvider ist Sie können sicherstellen, dass applyBatch() führt alle Operationen innerhalb einer Transaktion aus. Dafür sorgen auch alle Standard-Content-Provider.

Siehe meinen Blogbeitrag über ContentProviderOperation im Allgemeinen und meinen anderen Beitrag über die Verwendung von withBackReference(), um auf Ergebnisse früherer Operationen zuzugreifen – die Sie benötigen, um auf die orderId zuzugreifen .

Eine wichtige Einschränkung:Alle ContentProviderOperations eines Stapels müssen dieselbe Autorität verwenden - können aber unterschiedliche URIs verwenden! In Ihrem Fall sollte das kein Problem sein.