| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
NEUMARMORAES Novato

Registrado: Quarta-Feira, 18 de Julho de 2018 Mensagens: 4
|
Enviada: Qua Jul 18, 2018 3:46 pm Assunto: Erro Delphi XE8: No such table |
|
|
Quando vou debugar apresenta este erro quando clico no botão abrir tabela
NO SUCH TABLE: tb_clientes
Clicando no componentes dataset a tabela abre normalmente. |
|
| Voltar ao Topo |
|
 |
igormoita Profissional


Registrado: Quinta-Feira, 14 de Janeiro de 2010 Mensagens: 601
|
Enviada: Qua Jul 18, 2018 3:53 pm Assunto: |
|
|
Esse erro acontece quando não encontra a tabela específica.
Esta falha normalmente acontece se o sistema não achou o Banco de Dados corretamente.
Dá um breakpoint antes da linha do erro e verifique qual o valor da variável que armazena o caminho do Banco de Dados. _________________ SEMPRE COLOQUE [RESOLVIDO] NO SEU POST |
|
| Voltar ao Topo |
|
 |
NEUMARMORAES Novato

Registrado: Quarta-Feira, 18 de Julho de 2018 Mensagens: 4
|
Enviada: Qua Jul 18, 2018 8:55 pm Assunto: NO SUCH TABLE |
|
|
| igormoita escreveu: | Esse erro acontece quando não encontra a tabela específica.
Esta falha normalmente acontece se o sistema não achou o Banco de Dados corretamente.
Dá um breakpoint antes da linha do erro e verifique qual o valor da variável que armazena o caminho do Banco de Dados. |
VEJA O CAMINHO DO BANCO:
BancodadosConnection.Params.Values['Database'] := GetHomePath + PathDelim + 'banco.db3'; |
|
| Voltar ao Topo |
|
 |
igormoita Profissional


Registrado: Quinta-Feira, 14 de Janeiro de 2010 Mensagens: 601
|
Enviada: Qua Jul 18, 2018 9:55 pm Assunto: |
|
|
Acho que pode ser falta da '\' entre as variáveis, no FMX é melhor utilizar o TPath.Combine(Var1, Var2);
sempre de duas variáveis.
Basicamente a Função vai combinar as variáveis utilizando o separador padrão do sistema operacional, daí vc não precisa se preocupar com esse detalhe.
Acho que ficaria algo assim:
BancodadosConnection.Params.Values['Database'] := TPath.Combine(GetHomePath, PathDelim);
BancodadosConnection.Params.Values['Database'] := TPath.Combine(BancodadosConnection.Params.Values['Database'], 'banco.db3');
Isso deve combinar corretamente _________________ SEMPRE COLOQUE [RESOLVIDO] NO SEU POST |
|
| Voltar ao Topo |
|
 |
NEUMARMORAES Novato

Registrado: Quarta-Feira, 18 de Julho de 2018 Mensagens: 4
|
Enviada: Qua Jul 18, 2018 10:31 pm Assunto: |
|
|
| igormoita escreveu: | Acho que pode ser falta da '\' entre as variáveis, no FMX é melhor utilizar o TPath.Combine(Var1, Var2);
sempre de duas variáveis.
Basicamente a Função vai combinar as variáveis utilizando o separador padrão do sistema operacional, daí vc não precisa se preocupar com esse detalhe.
Acho que ficaria algo assim:
BancodadosConnection.Params.Values['Database'] := TPath.Combine(GetHomePath, PathDelim);
BancodadosConnection.Params.Values['Database'] := TPath.Combine(BancodadosConnection.Params.Values['Database'], 'banco.db3');
Isso deve combinar corretamente |
** nem compilou o projeto deu erro: undeclared identifier: tpath |
|
| Voltar ao Topo |
|
 |
igormoita Profissional


Registrado: Quinta-Feira, 14 de Janeiro de 2010 Mensagens: 601
|
Enviada: Qui Jul 19, 2018 12:31 am Assunto: |
|
|
Declare no Uses System.IOUtils
Quando acontecer esse tipo de erro undeclared identifier, pesquise pela função no Google, que normalmente terá a Uses necessária.
Por exemplo TPath é de System.IOUtils.TPath.Combine então será só declarar a System.IOUtils que dará certo. _________________ SEMPRE COLOQUE [RESOLVIDO] NO SEU POST |
|
| Voltar ao Topo |
|
 |
NEUMARMORAES Novato

Registrado: Quarta-Feira, 18 de Julho de 2018 Mensagens: 4
|
Enviada: Qui Jul 19, 2018 9:50 am Assunto: ERRO DELPHI XE8: NO SUCH TABLE |
|
|
| igormoita escreveu: | Declare no Uses System.IOUtils
Quando acontecer esse tipo de erro undeclared identifier, pesquise pela função no Google, que normalmente terá a Uses necessária.
Por exemplo TPath é de System.IOUtils.TPath.Combine então será só declarar a System.IOUtils que dará certo. |
resolvi colocando o caminho direto, desde já agradeço |
|
| Voltar ao Topo |
|
 |
|