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

execSQL:czy bindargs jest lepszy?

Metoda 1 jest lepszy.

Oszczędza to na przykład przed wstrzyknięciem SQL.
Ponieważ obsługuje typy danych za Ciebie.

Oznacza to, że konwertuje łańcuchy w razie potrzeby, dodając ograniczniki łańcucha i konwertując apostrofy.

Czyli:

Aby działać poprawnie, należy napisać metodę 2 lubię

db.execSQL("INSERT INTO " + TableName + " VALUES (null, '" +  type.getName().replace("'", "''") + "')");

Więc...

is the 1st example more secure? Tak.
faster when executing? Nie jestem pewien, czy tak.
easier to read Tak, kiedy już się do tego przyzwyczaisz (głównie na podstawie opinii).
... or is it the same? Nie, z powodu tego, co omówiono powyżej.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jakie są koszty ogólne korzystania z AUTOINCREMENT dla SQLite na Androidzie?

  2. Jak uzyskać dostęp i zaktualizować plik db Sqlite przechowywany lokalnie [folder zasobów] w pliku projektu za pomocą cordova?

  3. Jak uzyskać aktualną datę w SQLite?

  4. Korzystanie z procedury składowanej Sqlite w systemie Android

  5. funkcja sprawdzająca, czy SQLite używa journal_mode=WAL lub journal_mode=DELETE