Erro -104 ao abrir o Form.

28/01/2010

0

Boa Noite!
Estou usando Firebird 2.1 e o Visual Studio 2008 C# 3.0
no meu projeto tenho 2 combobox, que são preenchidas com os dados de duas tabelas, que estão vinculadas pelo ID-CLIENTES, ao iniciar o form a cobobox cbxClientes é carregada da seguinte maneira:
        public frmLocacaoEquip()
        {
            InitializeComponent();
            cbxClientes.DataSource = preencheClientes().Tables[0];
            cbxClientes.DisplayMember = "nome_clientes";
            cbxClientes.ValueMember = "id_clientes";
           
        }         private DataSet preencheClientes()
        {
            DataSet ds = new DataSet();
            conFB = new ConexaoFB(strConexao);
            conFB.iniciaDataAdpter("select ID_CLIENTES, NOME_CLIENTES from CLIENTES order by NOME_CLIENTES");
            conFB.FbDA.Fill(ds, "CLIENTES");
            conFB.fecharConexao();
            return ds;
        }
Quanto eu seleciono um cliente na cbxClientes a cbxObras é carregada com todas as obras do cliente selecionado:
        private void cbxClientes_SelectedIndexChanged(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            conFB = new ConexaoFB(strConexao);
            string strqry = "SELECT ID_OBRAS, ID_CLIENTES, NOME_OBRAS from OBRAS WHERE ID_CLIENTES = " + cbxClientes.SelectedValue;
            conFB.iniciaDataAdpter(strqry);
            conFB.FbDA.Fill(dt);
            cbxObras.DataSource = dt;
            cbxObras.DisplayMember = "NOME_OBRAS";
            cbxObras.ValueMember = "ID_OBRAS";
            txtCodCli.Text = cbxClientes.SelectedValue.ToString();
            txtCodObra.Text= cbxObras.SelectedValue.ToString();
            cbxObras.Focus();
        }
O problema é que quando executo o aplicatico em modo de depuração da um erro do firebird:
An exception of type 'FirebirdSql.Data.FirebirdClient.FbException' occurred in FirebirdSql.Data.FirebirdClient.dll but was not handled in user code
Additional information: Dynamic SQL Error
SQL error code = -104
Token unknown - line 1, column 84
. Diz que o Token desconhecido é um .(ponto), mas não tem nenhum ponto na linha de comando SQL Se eu executo o aplicativo direto pelo arquivo executável não dá erro nenhum. alguem ai tem como dar uma ajuda?
Celso Souza

Celso Souza

Responder

Posts

29/01/2010

Thiago Santana

Pegue o SQL que está sendo gerado através da sua aplicação e cole no ibexpert e veja onde que é erro! Assim será mais fácil de você descobrir qual é o erro... Pode ser um erro de conversão.. Espero ter ajudado!
Responder

29/01/2010

Celso Souza

Mas o Firebird não vai aceitar isso:   SELECT ID_OBRAS, ID_CLIENTES, NOME_OBRAS from OBRAS WHERE ID_CLIENTES = "+ cbxClientes.SelectedValue
Responder

05/03/2010

Thiago Santana

Celso mas vc poderá fazer assim para testar! SELECT ID_OBRAS, ID_CLIENTES, NOME_OBRAS from OBRAS WHERE ID_CLIENTES = Informe o mesmo valor que está no seu cbxClientes.SelectedValue;   Esta é a consulta SQL que está sendo gerada? Se for está um pouco estranha! Se esse seu cbxClientes for um combobox.. Acho que vc deveria utilizar assim: ' SELECT ID_OBRAS, ID_CLIENTES, NOME_OBRAS from OBRAS WHERE ID_CLIENTES =  ' + cbxClientes.text;   Teste isso aí! Espero ter ajudado!
AbraçoO 
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar