Tati_iniciante
Member
Pessoal,
Estou com um problema no banco de dados do app que estou desenvolvendo.
Criei um edittext em tela para pesquisar os valores de alguns campos no banco de dados. Ao realizar a pesquisa recebo a mensagem: "java.lang.Illegal.Argument.Exception", field b4a.meuapp.conexao._meusql has type anywheresoftware.b4a.sql.SQL, got java.lang.String
Algumas coisas que observei:
O problema ocorre quando eu tento consultar as informações no banco. Achei que fosse porque a tabela estava vazia, mas, inseri registros e continuou ocorrendo
O textfield, está parametrizado para receber texto, então, como informei texto, está correto
Abaixo, está meu módulo de conexão com o banco. Tentei inicializar as variáveis meuSQL e meuCursor de outra forma, mas não consegui. Acredito que parte do problema está aqui, passei null para elas, mas, o erro também ocorre.
B4A=True
'Group=Default Group
ModulesStructureVersion=1
Type=StaticCode
version=7.8
Sub Process_Globals
Dim meuSQL As SQL
'Public final execute(java.lang.String sql)
Dim meuCursor As Cursor
'meuSQL = "java.lang.String"
meuSQL = ""
meuCursor = ""
End Sub
Sub Globals
End Sub
Sub ConexaoDB
Dim Conex_DB As String
Conex_DB=DBUtils.CopyDBFromAssets("MeuBanco.db")
meuSQL.Initialize(Conex_DB, "MeuBanco.db", True)
End Sub
E aqui, a consulta ao banco que é onde exatamente ocorre o erro, na linha Conexao.meuCursor
Sub ConsultarBanco
ListView_Produtos.Clear
Conexao.meuCursor = Conexao.meuSQL.ExecQuery("SELECT * FROM MinhaTabela")
For i = 0 To Conexao.meuCursor - 1
Conexao.meuCursor.Position = 1
ListView_Produtos.AddTwoLines(Conexao.meuCursor.GetString("Descricao"),Conexao.meuCursor.GetString("Resumo"))
Next
End Sub
Sub EditText_Pesquisar_EnterPressed
ConsultarBanco
End Sub
Uma observação: Criei o meu banco diretamente no SQLite (Db Browser for SQLite), mas, no meu projeto é demonstrada uma mensagem informando que o banco não está sendo utilizado. Como adiciono ele ao projeto?
File "MeuBanco.db' in Files folder was not added to the Files tab.
Alguém teria alguma idéia de como resolver?
Obrigada.
Estou com um problema no banco de dados do app que estou desenvolvendo.
Criei um edittext em tela para pesquisar os valores de alguns campos no banco de dados. Ao realizar a pesquisa recebo a mensagem: "java.lang.Illegal.Argument.Exception", field b4a.meuapp.conexao._meusql has type anywheresoftware.b4a.sql.SQL, got java.lang.String
Algumas coisas que observei:
O problema ocorre quando eu tento consultar as informações no banco. Achei que fosse porque a tabela estava vazia, mas, inseri registros e continuou ocorrendo
O textfield, está parametrizado para receber texto, então, como informei texto, está correto
Abaixo, está meu módulo de conexão com o banco. Tentei inicializar as variáveis meuSQL e meuCursor de outra forma, mas não consegui. Acredito que parte do problema está aqui, passei null para elas, mas, o erro também ocorre.
B4A=True
'Group=Default Group
ModulesStructureVersion=1
Type=StaticCode
version=7.8
Sub Process_Globals
Dim meuSQL As SQL
'Public final execute(java.lang.String sql)
Dim meuCursor As Cursor
'meuSQL = "java.lang.String"
meuSQL = ""
meuCursor = ""
End Sub
Sub Globals
End Sub
Sub ConexaoDB
Dim Conex_DB As String
Conex_DB=DBUtils.CopyDBFromAssets("MeuBanco.db")
meuSQL.Initialize(Conex_DB, "MeuBanco.db", True)
End Sub
E aqui, a consulta ao banco que é onde exatamente ocorre o erro, na linha Conexao.meuCursor
Sub ConsultarBanco
ListView_Produtos.Clear
Conexao.meuCursor = Conexao.meuSQL.ExecQuery("SELECT * FROM MinhaTabela")
For i = 0 To Conexao.meuCursor - 1
Conexao.meuCursor.Position = 1
ListView_Produtos.AddTwoLines(Conexao.meuCursor.GetString("Descricao"),Conexao.meuCursor.GetString("Resumo"))
Next
End Sub
Sub EditText_Pesquisar_EnterPressed
ConsultarBanco
End Sub
Uma observação: Criei o meu banco diretamente no SQLite (Db Browser for SQLite), mas, no meu projeto é demonstrada uma mensagem informando que o banco não está sendo utilizado. Como adiciono ele ao projeto?
File "MeuBanco.db' in Files folder was not added to the Files tab.
Alguém teria alguma idéia de como resolver?
Obrigada.
Last edited: