Nella mia app Android, database esistente utilizzando da asset.
Supponiamo di avere un database nella cartella delle risorse eil nome è "a.sqlite". e ha una tabella che si chiama "t". e voglio scaricare una tabella che si chiama "t2.sql" dal mio server. dopo aver scaricato "t2.sql" voglio inserire tutti i valori della tabella "t2" nella tabella "t" in android a livello di programmazione
Supponiamo che questa sia la tabella del database principale
| id | name | dt1 | dt2 | dt3 |
| 1 | Paul | 21 | 98 | 91 |
| 2 | John | 22 | 44 | 11 |
| 3 | George| 21 | 31 | 22 |
| 4 | Ringo | 20 | 10 | 15 |
e voglio inserire questa tabella sql nella tabella principale
| id | name | dt1 | dt2 | dt3 |
| 1 | Paul_2 | 21 | 98 | 91 |
| 2 | John_2 | 22 | 44 | 11 |
| 3 | George_2| 21 | 31 | 22 |
| 4 | Ringo_2 | 20 | 10 | 15 |
Anche la mia tabella sql ha l'istruzione CREATE TABLE eINIZIA le istruzioni TRANSAZIONE / COMMIT. Dovrebbe essere molto semplice perché in Firefox SQLite manager sto usando solo l'importazione e questa tabella si unisce al mio database. ma come posso fare in Android non lo so
risposte:
0 per risposta № 1Quello che ho capito dalla tua domanda è che vuoi mappare tutti i valori da una tabella all'altra. Per questo devi prima ottenere tutti i valori da quella tabella e poi scaricarli in un altro.
Innanzi tutto ciò che devi fare è ottenere i valoridalla tabella t2.sql. Ora presumo che tu sappia come utilizzare il file t2.sql per ottenere entità e dati della tabella. Una volta ottenuto ciò, è sufficiente inserire in blocco i record in t1.
Inserire in blocco tutti i valori tramite il seguente frammento (pseudo codice),
try
{
db.beginTransaction();
for each record in the list
{
do_some_processing();
if (line represent a valid entry)
{
db.insert(TABLE_T1, null, SOME_VALUE);
}
some_other_processing();
}
db.setTransactionSuccessful();
}
catch (SQLException e) {}
finally
{
db.endTransaction();
}
Spero che questo ti aiuti. Se hai bisogno che io elabori per favore fatemelo sapere