SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Jak mogę podzielić długi, pojedynczy SQLiteOpenHelper na kilka klas, po jednej dla każdej tabeli?

czy myślisz, że mógłbyś dać kilka wskazówek, jak to zrobić

Nie ma to nic wspólnego z Androidem, a nawet nie ma zbyt wiele wspólnego z Javą. Rozkład długich struktur programistycznych (np. klas w Javie) na mniejsze struktury ma standardowe techniki, zwane wzorcami projektowymi, z implementacjami specyficznymi dla języka.

Na przykład możesz użyć wzorca złożonego:

  • Zdefiniuj interfejs — nazwę go TableHelper tutaj -- który ma onCreate() i onUpdate() metody, które pasują do tych w SQLiteOpenHelper

  • Zdefiniuj N klas, po jednej na tabelę, które implementują TableHelper interfejs i udostępnij logikę tworzenia i aktualizacji dla tej tabeli (wraz z inną logiką biznesową, którą chcesz mieć w tych klasach)

  • Miej swój SQLiteOpenHelper zdefiniuj TableHelper[] zawierające instancje twojego TableHelper klas i delegować onCreate() i onUpgrade() do tych TableHelper instancje przez iterację po tablicy



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Niestandardowy kalendarz i przypomnienie na Androida

  2. Jak sformatować wyniki SQLite jako tabelę

  3. Operator INTERSECT SQLite

  4. Jak wybrać dane między dwiema datami z sqlite db w formacie dd-mm-rrrr?

  5. kopiowanie pliku bazy danych z /assets do folderu /data/data w eksploratorze plików - Android