PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 24 → [WM-20] Alterar Estrutura SQLite (Android) Manualmente
[WM-20] Alterar Estrutura SQLite (Android) Manualmente
Iniciado por Willian Fernando, mai., 17 2015 1:06 AM - Sem resposta
Membro registado
123 mensagems
Popularité : +5 (5 votes)
Publicado em maio, 17 2015 - 1:06 AM
Quando se tem uma APP especifica, ou sobre pedido, ocorre que muitas vezes deve-se adicionar, ou modificar algo na estrutura do SQLite Localmente no dispositivo y muitas vezes não podemos simplesmente borrar o arquivo y criar de 0 já que pode-se ter dados ou o dispositivo não pode ser conectado localmente (que foi o meu caso em ambas opções).
O problema e que o WM não faz essa alteração automaticamente no SQLite, então neste caso em cada versão que lançar devera ser colocado um Script Manual para rodar antes da conexão local ao SQLite.
Segue função para ser executada antes da conexão local
Procedure GL_SQLLocal()
//Nova Coluna
ctConn is Connection
ctConn..Source = fDataDir + "/" + "baselocal.db" //aqui vai o caminho onde esta seu arquivo SQLite na APP
ctConn..Provider = hNativeAccessSQLite
ctConn..User = ""
ctConn..Password = ""
ctConn..Server = fDataDir + "/" + "baselocal.db" //aqui vai o caminho onde esta seu arquivo SQLite na APP
ctConn..Database = ""
ctConn..Access = hOReadWrite
IF HOpenConnection(ctConn) = False THEN
Error("Imposivel Realizar Conexão", HErrorInfo(hErrMessage))
EndProgram(True)
END

IF HChangeConnection("*",ctConn) = False THEN
Error("Imposivel Selecionar uma Conexão Local", HErrorInfo(hErrMessage))
EndProgram(True)
FIN

sql is string
query is Data Source

sql="alter table parametros add servidor_online varchar(200)"

// Alter table necessário
IF NOT HExecuteSQLQuery(query,sql) THEN
Error("Erro ao Modificar Base de Dados Local"+RC+HErrorInfo())
RETURN
END


--
Atte. Willian Fernando
Best Regards Willian Fernando