SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

execSQL:bindargs é melhor?


Método 1 é melhor.

Ele te poupa de injeção de SQL, por exemplo.
Porque ele trata os tipos de dados para você.

O que significa que ele converte as strings quando necessário, adicionando os delimitadores de string e convertendo os apóstrofos.

Ou seja:

Para funcionar corretamente, você deve escrever o método 2 Como
db.execSQL("INSERT INTO " + TableName + " VALUES (null, '" +  type.getName().replace("'", "''") + "')");

Então...

is the 1st example more secure? Sim.
faster when executing? Não tenho certeza se é.
easier to read Sim, uma vez que você se acostumar com isso (principalmente baseado em opinião).
... or is it the same? Não, pelo que foi discutido acima.