|
Initialize Database Sqlite in Windev Mobile in Android |
Débuté par adrianoboller, 18 nov. 2014 13:58 - 4 réponses |
| |
| | | |
|
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 18 novembre 2014 - 13:58 |
Procedure DB_InitializeDatabase()
ok, TabelasOk is boolean = False sDatabaseName is string = "FaixaVermelha.db" sDatabaseNameJournal is string = "FaixaVermelha.db-journal"
nCurrentDBVersion is int = 1 nDBVersionInstalled is int bFirstStartup is boolean
NextTitle("Atenção")
IF InSimulatorMode() = True THEN
IF fFileExist(CompleteDir(fDataDir())+"t000_configuracao.fic") = False Info("Arquivos da base de dados do ipnone não localizados",CompleteDir(fDataDir())+"t000_configuracao.fic") END END
IF InSimulatorMode() = False gsBasePath = gsAppDir + ["/DB/"] + sDatabaseName gsBasePathJournal = gsAppDir + ["/DB/"] + sDatabaseNameJournal IF NOT fDirectoryExist(gsAppDir + ["/DB/"]) THEN DB_Diretorios() END ELSE gsBasePath = gsAppDir + ["\DB\"] + sDatabaseName gsBasePathJournal = gsAppDir + ["\DB\"] + sDatabaseNameJournal IF NOT fDirectoryExist(gsAppDir + ["\DB\"]) THEN DB_Diretorios() END END
nDBVersionInstalled = LoadParameter(PREF_DB,0) IF nDBVersionInstalled <> nCurrentDBVersion THEN DB_Update(nDBVersionInstalled,nCurrentDBVersion) END
Connn is Connection
Connn..Provider = hNativeAccessSQLite
Connn..Access = hOReadWrite
Connn..Source = gsBasePath
HChangeConnection("*",Connn)
HChangeConnection(t000_configuracao,Connn) HChangeConnection(t001_cliente,Connn) HChangeConnection(t002_avisos,Connn) HChangeConnection(t003_gps,Connn) HChangeConnection(t004_cartoescreditos,Connn) HChangeConnection(t005_favoritos,Connn) HChangeConnection(t006_enderecos,Connn) HChangeConnection(t007_tempodistancia,Connn) HChangeConnection(t008_inicial,Connn) HChangeConnection(t009_taxislogados,Connn) HChangeConnection(t010_corridasagendadas,Connn) HChangeConnection(t011_motivo_cancelamento,Connn) HChangeConnection(t012_pesquisa_satisfacao,Connn) HChangeConnection(t013_historico,Connn) HChangeConnection(t014_finalidades,Connn) HChangeConnection(t015_pontosturisticos,Connn) HChangeConnection(t016_memo,Connn)
DB_DeleteTodosArquivos("N")
IF NOT fFileExist(gsBasePath) THEN
bFirstStartup = True
IF NOT fExtractResource(sDatabaseName,gsBasePath) OR NOT fFileExist(gsBasePath) OR NOT fFileExist(gsBasePathJournal) THEN
fDelete(gsBasePath) fDelete(gsBasePathJournal)
fCreate(gsBasePath)
HCreation(t000_configuracao,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t001_cliente,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t002_avisos,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t003_gps,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t004_cartoescreditos,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t005_favoritos,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t006_enderecos,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t007_tempodistancia,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t008_inicial,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t009_taxislogados,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t010_corridasagendadas,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t011_motivo_cancelamento,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t012_pesquisa_satisfacao,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t013_historico,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t014_finalidades,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t015_pontosturisticos,"",gsBasePath,gsBasePathJournal,hChangeCharset) HCreation(t016_memo,"",gsBasePath,gsBasePathJournal,hChangeCharset)
END
END
IF HOpenConnection(Connn) = False THEN Error("Failure connecting to the SQLite Android database", HErrorInfo()) ELSE
TabelasOk = HCreationIfNotFound("*","",gsBasePath,gsBasePath,hChangeCharset+hDelayedOpening+hNoLink)
HCreationIfNotFound(t000_configuracao) HCreationIfNotFound(t001_cliente) HCreationIfNotFound(t002_avisos) HCreationIfNotFound(t003_gps) HCreationIfNotFound(t004_cartoescreditos) HCreationIfNotFound(t005_favoritos) HCreationIfNotFound(t006_enderecos) HCreationIfNotFound(t007_tempodistancia) HCreationIfNotFound(t008_inicial) HCreationIfNotFound(t009_taxislogados) HCreationIfNotFound(t010_corridasagendadas) HCreationIfNotFound(t011_motivo_cancelamento) HCreationIfNotFound(t012_pesquisa_satisfacao) HCreationIfNotFound(t013_historico) HCreationIfNotFound(t014_finalidades) HCreationIfNotFound(t015_pontosturisticos) HCreationIfNotFound(t016_memo)
HCreationIfNotFound("*") END
IF TabelasOk = True THEN
HDescribeConnection(Connn, "", "","Sqlite", "dbo", hNativeAccessSQLite, hOReadWrite, "")
ok = HChangeConnection("*",Connn)
IF InSimulatorMode() = False THEN ok = UpdateDb_1(gsBasePath, "t005_favoritos", "A005_Cidade", "30") ok = UpdateDb_1(gsBasePath, "t005_favoritos", "A005_Uf", "2")
ok = UpdateDb_1(gsBasePath, "t008_inicial", "t008_cidade", "30") ok = UpdateDb_1(gsBasePath, "t008_inicial", "t008_uf", "2")
ok = UpdateDb_1(gsBasePath, "t010_corridasagendadas", "t010cidade", "30") ok = UpdateDb_1(gsBasePath, "t010_corridasagendadas", "t010uf", "2") ok = UpdateDb_1(gsBasePath, "t010_corridasagendadas", "t010latitude", "12") ok = UpdateDb_1(gsBasePath, "t010_corridasagendadas", "t010longitude", "12") END
IF InAndroidMode() THEN
IF HDescribeConnection(Connn, "", "", "", "", hAccessSQLiteAndroid, hOReadWrite) = False THEN Error("Não foi possivel criar ou acessar a base de dados.", HErrorInfo(hErrMessage)) EndProgram(True) END
IF HChangeConnection("*", Connn) = False THEN Error("Não foi possivel criar ou acessar a base de dados", HErrorInfo(hErrMessage)) EndProgram(True) END
IF InAndroidSimulatorMode() = False THEN sErro is string = AtivarDesativarIntegridadeSQLite("desativar") IF sErro <> "ok" THEN Error(sErro) EndProgram() END ELSE
END
END
ELSE
Info("Não foi possivel criar ou acessar a base de dados.")
EndProgram(True)
END
RESULT(TabelasOk) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 18 novembre 2014 - 13:58 |
import android.database.sqlite.*; import android.content.Context; import android.util.*; import android.database.*; PUBLIC static string AtivarDesativarIntegridadeSQLite(string sTipo){ string DB_NAME = "FaixaVermelha.db"; string alterQuery = ""; SQLiteDatabase db; try { db = getContexteApplication().openOrCreateDatabase(DB_NAME, 0, null); try { IF (sTipo.toLowerCase() == "desativar"){ db.execSQL("PRAGMA synchronous = OFF;"); db.rawQuery("PRAGMA journal_mode = OFF;",null); } ELSE{ db.execSQL("PRAGMA synchronous = FULL;"); db.rawQuery("PRAGMA journal_mode = DELETE;",null); } db.close(); RETURN "ok"; } catch(SQLException e) { db.close(); RETURN e.getMessage(); } } catch (SQLException e) { RETURN e.getMessage(); } }
|
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 18 novembre 2014 - 13:59 |
Procedure DB_Update(nDBVersionInstalled_ is int,nCurrentDBVersion is int)
IF nDBVersionInstalled_ > 0 THEN
ELSE SaveParameter("DB",nCurrentDBVersion) END |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 18 novembre 2014 - 13:59 |
CONSTANT PREF_DB = "DB" END
|
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 18 novembre 2014 - 14:01 |
In iOS + HyperfileSql *************************
CONSTANT HF_FILE_LIST = [ t000_configuracao.fic t001_cliente.fic t002_avisos.fic t003_Gps.fic t004_cartoescreditos.fic t005_favoritos.fic t006_enderecos.fic t007_tempodistancia.fic t008_inicial.fic t009_taxislogados.fic t010_corridasagendadas.fic t011_motivo_cancelamento.fic t012_pesquisa_satisfacao.fic t013_historico.fic t014_finalidades.fic t015_pontosturisticos.fic t016_memo.fic t000_configuracao.ndx t001_cliente.ndx t002_avisos.ndx t003_Gps.ndx t004_cartoescreditos.ndx t005_favoritos.ndx t006_enderecos.ndx t007_tempodistancia.ndx t008_inicial.ndx t009_taxislogados.ndx t010_corridasagendadas.ndx t011_motivo_cancelamento.ndx t012_pesquisa_satisfacao.ndx t013_historico.ndx t014_finalidades.ndx t015_pontosturisticos.ndx t016_memo.ndx t000_configuracao.mmo t001_cliente.mmo t002_avisos.mmo t003_Gps.mmo t004_cartoescreditos.mmo t005_favoritos.mmo t006_enderecos.mmo t007_tempodistancia.mmo t008_inicial.mmo t009_taxislogados.mmo t010_corridasagendadas.mmo t011_motivo_cancelamento.mmo t012_pesquisa_satisfacao.mmo t013_historico.mmo t014_finalidades.mmo t015_pontosturisticos.mmo t016_memo.mmo ] END
sHFFile is string
FOR EACH STRING sFile OF HF_FILE_LIST SEPAREE by CR sHFFile = CompleteDir(fDataDir()) + sFile
IF fFileExist(sHFFile) = False THEN fExtractResource(sFile, sHFFile) END
END
WHEN EXCEPTION IN HCreationIfNotFound(“*”) DO Error("SQL error: " + HError()) TabelasOk = False ELSE TabelasOk = True END |
| |
| |
| | | |
|
| | | | |
| | |
|