+ Responder ao Tópico



  1. #1
    sandercomputacao
    Visitante

    Padrão Erro com Firebird ou Linux

    Olá galera.. tom com um problemão eu nao faço nem ideia do q pode ser..


    seguinte..
    tenho dois micros linux CL10 aq, um ja tinha instalado faz algum tempo o outro faz 1 semana + ou -, aparentemente eles estao com a instalação identica, e ele é o servidor para os sistema da empresa de onde eu trabalho, ou seja, os executáveis e os BDs ficam no Linux e rodam em Windows, mas eu precisei instalar o FirebirdSS a versão é a mesma em ambas as máquinas..

    nos dois micros estao como dono e grupo --> nobody e permissao total 777.
    p.s. isso so para testes..

    mas esta acontecendo o seguinte ERRO:
    I/O Error for file ""
    Error while trying to open file
    permission denied

    qdo fui verificar o q poderia ser aconteceu o seguinte..
    a SQL

    SELECT A.*
    FROM Fichas A
    WHERE A.Char_ID_Emp = '1' and A.Str_Exp_Exr = '2005'
    ORDER BY A.ID5_Fc;

    se eu tirar o * e por um campo funciona, se deixar o * e tirar o ORDER BY tb funciona ou colocar no máximo 30 campos com o order by tb funciona do contrário da erro.
    JA NO LINUX ANTIGO Q EU TENHO AQ NAO DA NENHUM TIPO DE PROBLEMA..

    FUNCIONA PERFEITAMENTE.

    o q pode ser isso, e como eu corrijo isso..

    OBRIGADO A TODOS!

  2. #2

    Padrão Re: Erro com Firebird ou Linux

    soh deve ter havido uma atualizacao na sintaxe, nao eh o linux eh o firebird

    SELECT A.*
    FROM Fichas A
    WHERE A.Char_ID_Emp = '1' and A.Str_Exp_Exr = '2005'
    ORDER BY A.ID5_Fc;

    como vc ta usando uma tabela soh vc nao precisa colocar from fichas a, soh fichas resolve, assim:

    SELECT *
    FROM Fichas
    WHERE Char_ID_Emp = '1' and Str_Exp_Exr = '2005'
    ORDER BY ID5_Fc;

  3. #3
    sandercomputacao
    Visitante

    Padrão Re: Erro com Firebird ou Linux

    Citação Postado originalmente por 1c3_m4n
    soh deve ter havido uma atualizacao na sintaxe, nao eh o linux eh o firebird

    SELECT A.*
    FROM Fichas A
    WHERE A.Char_ID_Emp = '1' and A.Str_Exp_Exr = '2005'
    ORDER BY A.ID5_Fc;

    como vc ta usando uma tabela soh vc nao precisa colocar from fichas a, soh fichas resolve, assim:

    SELECT *
    FROM Fichas
    WHERE Char_ID_Emp = '1' and Str_Exp_Exr = '2005'
    ORDER BY ID5_Fc;
    TUDO BEM.. MAS PQ Q NO LINUX Q EU JA TINHA AQ ELE FUNCIONA NORMALMENTE, MESMO USANDO A.? ? :?

  4. #4

    Padrão Re: Erro com Firebird ou Linux

    preste atencao, jah falei no outro post, provavelmente ouve uma mudanca de sintaxe nessa versao... isso acontece com qq bd

  5. #5
    sandercomputacao
    Visitante

    Padrão Re: Erro com Firebird ou Linux

    Citação Postado originalmente por 1c3_m4n
    preste atencao, jah falei no outro post, provavelmente ouve uma mudanca de sintaxe nessa versao... isso acontece com qq bd
    qdo vc se refere a essa versão vc esta se referindo a versao do firebird?? pq se for a versao é a mesma foi o mesmo q eu instalei a algum tempo..

    de qualquer forma valeu!!

  6. #6
    sandercomputacao
    Visitante

    Padrão Re: Erro com Firebird ou Linux

    olá amigo..

    eu tentei fazer isso mas deu o mesmo erro, nao auterou em nada..

  7. #7
    sandercomputacao
    Visitante

    Padrão Re: Erro com Firebird ou Linux

    Ai galera.. se alguém quizer saber eu cosegui arrumar..

    Claro q o nosso amigo P.I.T.S.A me deu uma dica que matou a charada.. Valeu P.I.T.S.A.

    seguinte.. as tabelas nao estavam com permissao de usuário, ou seja o usuário q tentava acessa-las nao tinha a permissão, o q eu tive q fazer:

    1º fui na pasta bin do firebird e me conectei ao meu banco de dados.

    #cd /opt/firebird/bin // pasta principal do firebird
    #./isql <caminho + nome_do_banco_de_dados> -user SYSDBA -password <passoword> // conectando ao banco de dados, conectar como usuário SYSDBA.

    em seguida dar o comando para dar permissao de uma tabela ao determinado usuário.

    #grant all on <TABELA> to <USUARIO_A_DAR_PERMISSAO>; // NAO esquecer do ponto e virgula pois é um comando SQL.
    e finalmente um
    #exit; // para desconectar com o Banco de Dados.

    e é isso, abraços a todos.