Array
(
)

Erro no INSERT com FIREBIRD

Raniel Nogueira
   - 08 dez 2013

Galera estou com um probleminha na hora de fazer um Insert do meu Form para o Banco que é firebird, olha o erro:
Clique na imagem para abrir em uma nova janela
Vou postar aqui minha classe para salvar no Banco
#Código

public static void fb_InserirDados(Cliente cliente)
        {
            using (FbConnection conexaoFireBird = clsBanco.getInstancia().getConexao())
            {
                try
                {
                    conexaoFireBird.Open();
                    string mSQL =  "INSERT into Pessoa Values(" + cliente.ID + ",''''''''" + cliente.NOME + "'''''''',''''''''" + cliente.ENDERECO + "'''''''',''''''''" +
                   cliente.UF + "'''''''',''''''''" + cliente.CIDADE + "'''''''',''''''''" + cliente.BAIRRO + "'''''''',''''''''" + cliente.CEP + "'''''''',''''''''" +
                   cliente.CPF + "'''''''',''''''''" + cliente.CNPJ+ "'''''''',''''''''" + cliente.PROFISSAO + "'''''''',''''''''" + cliente.RESTRICOES + "'''''''',''''''''" + 
                    cliente.EMAIL + "'''''''',''''''''" + cliente.TELEFONE + "'''''''',''''''''" + cliente.CELULAR + "'''''''',''''''''" +cliente.FAX+"'''''''')";

                    FbCommand cmd = new FbCommand(mSQL, conexaoFireBird);
                    cmd.ExecuteNonQuery();
                }
                catch (FbException fbex)
                {
                    throw fbex;
                }
                finally
                {
                    conexaoFireBird.Close();
                }
            }
        }

E o codigo no botão salvar:
#Código
private void btnSalvar_Click(object sender, EventArgs e)
        {
           Cliente cliente = new Cliente();
            cliente.ID = Convert.ToInt32(txtCodCliente.Text);
            cliente.NOME = txtNome.Text;
            cliente.ENDERECO = txtEndereco.Text;
            cliente.UF = cbUF.Text;
            cliente.CIDADE = txtCidade.Text;
            cliente.BAIRRO = txtBairro.Text;
            cliente.CEP = txtCep.Text;
            cliente.CPF = txtCPF.Text;
            cliente.PROFISSAO = txtProfissao.Text;
            cliente.RESTRICOES = cbRestricoes.Text;
            cliente.EMAIL = txtEmail.Text;
            cliente.TELEFONE = txtTelefone.Text;
            cliente.CELULAR = txtCelular.Text;
            cliente.FAX = txtFax.Text;

            try
            {
                clsBanco.fb_InserirDados(cliente);
                preencheGrid();
                MessageBox.Show("Cliente inserido com sucesso !", "Inserir", MessageBoxButtons.OK);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK);
            }
        }

Raniel Nogueira
   - 08 dez 2013

Postei meu código direitinho não sei pq apareceu tantas aspas.

Emanoel Deivison
   - 09 dez 2013

Qual o tipo de dados do seu campo numérico?

Raniel Nogueira
   - 09 dez 2013

Inteiro é somente o ID

Douglas Claudio
|
MVP
Pontos: 100
    09 dez 2013

Raniel, verifique o tamanho de cada campo que esta tentando inserir os dados na tabela, e veja se não tem algum
ultrapassando o tamanho que você definiu na tabela.

Raniel Nogueira
   - 09 dez 2013

Irei testar obrigado pela dica.

Raniel Nogueira
   - 09 dez 2013


Citação:
Raniel, verifique o tamanho de cada campo que esta tentando inserir os dados na tabela, e veja se não tem algum
ultrapassando o tamanho que você definiu na tabela.


Acabei de fazer isso mais ficar no mesmo jeito, já tentei sem as aspas simples, já tentei verificar o tamanho dos campos e nada.

Raniel Nogueira
   - 09 dez 2013

SQL dá minha tabela

#Código

CREATE TABLE PESSOA (
    ID          INTEGER,
    NOME        VARCHAR(200),
    ENDERECO    VARCHAR(150),
    UF          VARCHAR(10),
    CIDADE      VARCHAR(100),
    BAIRRO      VARCHAR(100),
    CEP         VARCHAR(8),
    CPF         VARCHAR(11),
    CNPJ        VARCHAR(14),
    PROFISSAO   VARCHAR(50),
    RESTRICOES  VARCHAR(50),
    EMAIL       VARCHAR(100),
    TELEFONE    VARCHAR(10),
    CELULAR     VARCHAR(10),
    FAX         VARCHAR(10)
);

Raniel Nogueira
   - 09 dez 2013

Minha chave primaria

#Código

ALTER TABLE PESSOA ADD CONSTRAINT PK_PESSOA PRIMARY KEY (ID);

Raniel Nogueira
   - 09 dez 2013

Resolvi o problema pessoa, bem eu criei algumas mascarás para meus campos CEP,CPF,CNPJ,TELEFONE,CELULAR,FAX, então eu esqueci de retirar a mascara na hora da gravação no banco vlw ajuda de todos abraço.

Douglas Claudio
|
MVP
Pontos: 100
    10 dez 2013

Quando precisar estou à disposição.