Página 1 de 1
Firebird em LAN
Enviado: 15 Out 2018 10:53
por Hasse
Bom dia colegas.
Para os testes iniciais de conexão ao banco Firebird uso o FlameRobin.
A conexão ao Banco de dados Firebird (*.FDB) em modo LOCAL funciona perfeito.
Ao tentar fazer a conexão ao mesmo Banco via LAN no Servidor dá êrro.
O ODBC instalado no Servidor, configurado. No "Teste" do ODBC informa que está OK.
Onde pode estar o êrro ?
Firebird em LAN
Enviado: 15 Out 2018 11:33
por alxsts
Olá!
Não conheço muito bem o Firebird. Pode ser problema na
connection string. Não sei se o FB tem configuração de permissão para acesso externo. Pode ser isto também. Pode ser que o próprio servidor não esteja configurado para acesso externo.
Verifique sua conexão. No site
The Connection Strings Reference tem exemplos de conexão para todos os bancos de dados.
Poste o trecho de código que está usando.
Firebird em LAN
Enviado: 15 Out 2018 11:56
por Hasse
O Flamerobin é um APP de manutenção especial para Firebird, e desta forma não tenho acesso à string de conexão que ele usa.
Mas, tentarei fazer conexão direta, via programa e te informo do resultado.
Firebird em LAN
Enviado: 15 Out 2018 17:41
por Hasse
Boa tarde.
Surgiu uma outra questão:
O ODBC deve ser instalado e configurado no computador local e apontado para o Banco no Servidor ou ele deve ser configurado no servidor ?
Firebird em LAN
Enviado: 15 Out 2018 18:21
por alxsts
Olá!
ODBC deve ser instalado e configurado em cada máquina que vai acessar o servidor, apontando para este último. No caso de se instalar o banco de dados na máquina local, ODBC vai apontar para ela mesma (localhost ou 127.0.0.1 no IPv4).
Firebird em LAN
Enviado: 15 Out 2018 23:59
por sygecom
Qual erro?
Firebird em LAN
Enviado: 16 Out 2018 09:37
por MSDN
O driver ODBC específico para o banco de dados que deseja usar seria uma ponte entre sua aplicação e o servidor de dados, então as configurações de acesso, ficariam ou no seu código fonte, ou em uma tabela/txt/xml/ini separado, para ser lido na hora da execução do aplicativo :
Código: Selecionar todos
static function entrada()
local m_usuario := 'sysdba'
local m_senha := 'masterkey'
local m_hostname := ''
local m_banco := 'broker'
local oCursor
local cSQL
/*
** exemplo se quiser acessar o mysql
* mysql
Try
CNN:=CreateObject("ADODB.Connection")
CNN:Open("DRIVER={MySQL ODBC 3.51 Driver};" + ;
"server=localhost" + ;
";database=broker" + ;
";uid=root" + ;
";pwd=121230")
Catch e
Error Connection CNN
ExitProcess(0)
End
*/
* firebird
Try
CNN:=CreateObject("ADODB.Connection")
CNN:Open("DRIVER=Firebird/InterBase(r) driver;UID="+alltrim(upper(m_usuario))+";PWD="+alltrim(m_senha)+";DBNAME="+alltrim(upper(m_hostname))+alltrim(upper(m_banco))+".fdb;CHARSET=WIN1252;DIALECT=3;CLIENT=fbclient.dll")
Catch e
Error Connection CNN
ExitProcess(0)
End
****************************
* *
* criar tabelas do sistema *
* *
****************************
cSQL := "CREATE TABLE COTACAO (ID VARCHAR(15), ID_VEICULO INTEGER, ID_CLIENTE INTEGER, NOME_VEICULO VARCHAR(40), ID_SEGURADORA INTEGER, VEZES INTEGER, FORMA_PAGAMENTO INTEGER, TIPO_FRANQUIA INTEGER, DATA_INICIO DATE, VALOR_FRANQUIA NUMERIC(12,2), VALOR_SEGURO NUMERIC(12,2), COB_CASCO INTEGER, COB_DANOSMAT INTEGER, COB_DANOSCORP INTEGER, COB_MORTE INTEGER, COB_INVALIDEZ INTEGER, OUTROS BLOB, NOME_SEGURADORA VARCHAR(40), PRIMARY KEY(ID))"
Try
CNN:Execute(cSQL)
Catch e
//ExitProcess(MsgStop("tabela já existe"))
End
return(nil)
No exemplo, conecta usando ADO (windows) + driver ODBC (tem que instalar o do Firebird), e a parte do Try-Catch seria do xHabour, que pode ser usado com Harbour associando xhb.ch, ou claro, substituindo por seu equivalente, que agora não me recordo o nome e sintaxe.
Abraços
Firebird em LAN
Enviado: 16 Out 2018 16:23
por alxsts
Firebird em LAN
Enviado: 16 Out 2018 19:49
por Hasse
O problema está no ODBC ou na sua configuração.
Depois de preenchidos todos os campos, ao clicar em Testar, o APP responde que "Não foi possível encontrar o arquivo".
Amanhã posto a imagem da configuração do ODBC e do Êrro.
Firebird em LAN
Enviado: 17 Out 2018 09:23
por Hasse
Bom dia.
Segue imagem do Erro do ODBC.
Firebird em LAN
Enviado: 17 Out 2018 09:37
por Hasse
Somente para tirar dúvida, fui no Servidor, instalei o ODBC e funcionou corretamente.
O Teste confirmou a conexão.
Firebird em LAN
Enviado: 17 Out 2018 13:02
por alxsts
Firebird em LAN
Enviado: 17 Out 2018 19:19
por Hasse
As DUAS máquinas são em 32 bit.
ODBC compatível, 32 bit. Mesmo porque já tentei instalar o de 64 bit (por falta de atenção), e o SO recusou.