ERRO NA INSTRUCAO INSERT INTO
Bom dia, galera do VBM!
Estou com problema na instrução insert. Eu uso o Acess.
A tabela tem os seguintes campos: ID, tipopessoa, sede, nome, fantasia, razaosocial, datafundacao, datanascimento, clientedesde, natural, InscEstadual, InscMunicipal, Identidade, CNPJ, CPF, Endereco, CEP, bairro, cidade, uf, fone, celular, fax.
em alguns momentos não preciso inserir dados em todos os campos, porem está me retornando um erro:
run-time error '-2147217904(8004e10)
nenhum valor foi fornecido para um ou mais parametro necessario
"INSERT INTO Clientes(ID, TipoPessoa, Sede, Fantasia, RazaoSocial, DataFundacao, ClienteDesde, CNPJ, Endereco, CEP, Bairro, Fone) VALUES (" & codigo & ", " & vPessoa & ", " & vSede & ", '" & txtNome.Text & "', '" & txtSocial.Text & "', '" & txtFundacao.Text & "', '" & txtDesde.Text & "', '" & txtCNPJ.Text & "', '" & txtEndereco.Text & "', '" & txtCEP.Text & "', '" & txtBairro.Text & "', '" & txtFone.Text & "');"
Alguem pode me ajudar?
Estou com problema na instrução insert. Eu uso o Acess.
A tabela tem os seguintes campos: ID, tipopessoa, sede, nome, fantasia, razaosocial, datafundacao, datanascimento, clientedesde, natural, InscEstadual, InscMunicipal, Identidade, CNPJ, CPF, Endereco, CEP, bairro, cidade, uf, fone, celular, fax.
em alguns momentos não preciso inserir dados em todos os campos, porem está me retornando um erro:
run-time error '-2147217904(8004e10)
nenhum valor foi fornecido para um ou mais parametro necessario
"INSERT INTO Clientes(ID, TipoPessoa, Sede, Fantasia, RazaoSocial, DataFundacao, ClienteDesde, CNPJ, Endereco, CEP, Bairro, Fone) VALUES (" & codigo & ", " & vPessoa & ", " & vSede & ", '" & txtNome.Text & "', '" & txtSocial.Text & "', '" & txtFundacao.Text & "', '" & txtDesde.Text & "', '" & txtCNPJ.Text & "', '" & txtEndereco.Text & "', '" & txtCEP.Text & "', '" & txtBairro.Text & "', '" & txtFone.Text & "');"
Alguem pode me ajudar?
Bom, algum campo que você está incluÃÂÂndo, que não é um valor obrigatório está marcado na propriedade Permitir Comprimento Zero = Não, para resolver, verifique os campos que não são obrigatórios e coloque essa propriedade para Sim(Permitir Comprimento Zero = Sim).
Piolho, valeu pela ajuda, mais continua dando o mesmo erro.
Rafael,
Os campos numéricos em sua instrução SQL, aqueles que não são delimitados por aspas simples, precisam ter algum conteúdo, nem que seja um 0.
Se não tiverem sua instrução ficará com duas vÃÂÂrgulas juntas, tipo assim ",," resultando então neste erro aàque vc passou.
Os campos numéricos em sua instrução SQL, aqueles que não são delimitados por aspas simples, precisam ter algum conteúdo, nem que seja um 0.
Se não tiverem sua instrução ficará com duas vÃÂÂrgulas juntas, tipo assim ",," resultando então neste erro aàque vc passou.
MARCELOHF, infelizmente ta dando o mesmo erro. todos os campos numericos possuem numeros na hora que gravo os dados.
Valeu mesmo pela ajuda.
Valeu mesmo pela ajuda.
Amigo, na hora que der o erro, pegue esta string que vc postou e cole no Imediate, com um ponto de interrogação a frente. Tipo assim:
Ai vc da ENTER.
Ele vai te gerar a Query que está sendo executada para inserir, verifica aàentão se tem alguma coisa faltando, aquilo que te falei das vÃÂÂrgulas é uma boa forma de ver.
Provavelmente o erro está entre os 3 primeiros campos.
Citação:?"INSERT INTO Clientes(ID, TipoPessoa, Sede, Fantasia, RazaoSocial, DataFundacao, ClienteDesde, CNPJ, Endereco, CEP, Bairro, Fone) VALUES (" & codigo & ", " & vPessoa & ", " & vSede & ", '" & txtNome.Text & "', '" & txtSocial.Text & "', '" & txtFundacao.Text & "', '" & txtDesde.Text & "', '" & txtCNPJ.Text & "', '" & txtEndereco.Text & "', '" & txtCEP.Text & "', '" & txtBairro.Text & "', '" & txtFone.Text & "');"
Ai vc da ENTER.
Ele vai te gerar a Query que está sendo executada para inserir, verifica aàentão se tem alguma coisa faltando, aquilo que te falei das vÃÂÂrgulas é uma boa forma de ver.
Provavelmente o erro está entre os 3 primeiros campos.
MARCELOHF, eu fiz o teste e me retornou isso:
INSERT INTO Clientes(Codigo, TipoPessoa, Sede, Fantasia, RazaoSocial, DataFundacao, ClienteDesde, InscricaoEstadual, CNPJ, InscricaoMunicipal, Endereco, CEP, Bairro, Cidade, UF, Fone, Celular, Fax) VALUES (1, 1, Verdadeiro, 'Rpcinfo', 'Rpc Informatica E Serviços', 01/06/2007, 10/07/2007, '123654789', '123456789', '123654789', 'Rua Cap Gustavo, 3361', '60120-140', 'Joaquim Tavora', 'Fortaleza', 'CE', '3472-127', '8818-700', '3472-127')
Não consigo ve nenhum error
INSERT INTO Clientes(Codigo, TipoPessoa, Sede, Fantasia, RazaoSocial, DataFundacao, ClienteDesde, InscricaoEstadual, CNPJ, InscricaoMunicipal, Endereco, CEP, Bairro, Cidade, UF, Fone, Celular, Fax) VALUES (1, 1, Verdadeiro, 'Rpcinfo', 'Rpc Informatica E Serviços', 01/06/2007, 10/07/2007, '123654789', '123456789', '123654789', 'Rua Cap Gustavo, 3361', '60120-140', 'Joaquim Tavora', 'Fortaleza', 'CE', '3472-127', '8818-700', '3472-127')
Não consigo ve nenhum error
Qual o tipo do campo Sede?
Vc não tem condições de postar um banco de dados aqui vazio, somente com essa tabela Clientes?
Aàeu posso dar uma olhada melhor, pq realmente está difÃÂÂcil de achar o erro.
De qualquer forma, tente assim:
Vc não tem condições de postar um banco de dados aqui vazio, somente com essa tabela Clientes?
Aàeu posso dar uma olhada melhor, pq realmente está difÃÂÂcil de achar o erro.
De qualquer forma, tente assim:
"INSERT INTO Clientes(ID, TipoPessoa, Sede, Fantasia, RazaoSocial, DataFundacao, ClienteDesde, CNPJ, Endereco, CEP, Bairro, Fone) VALUES (" & codigo & ", " & vPessoa & ", " & vSede & ", '" & txtNome.Text & "', '" & txtSocial.Text & "', #" & txtFundacao.Text & "#, #" & txtDesde.Text & "#, '" & txtCNPJ.Text & "', '" & txtEndereco.Text & "', '" & txtCEP.Text & "', '" & txtBairro.Text & "', '" & txtFone.Text & "')"
ao invés de verdadeiro, tente gravar 1 para o vSede para true e 0 para false, ou ainda true ou false...
Acho que daàvai funcionar...
Acho que daàvai funcionar...
Amigao,
E se vc fizer uma gambis...
colocar alguns ifs antes de dar um insert verificando se o conteudo do campo for empty coloque um "", exemplo:
if txtnome.text = empty then
txtnome.text = " "
endif
Só fazer nos campos em que o preenchimento nao seja obrigatorio
é uma gambis, mas com isso ele gravará um espaço em branco e pensará que tem um registro.
E se vc fizer uma gambis...
colocar alguns ifs antes de dar um insert verificando se o conteudo do campo for empty coloque um "", exemplo:
if txtnome.text = empty then
txtnome.text = " "
endif
Só fazer nos campos em que o preenchimento nao seja obrigatorio
é uma gambis, mas com isso ele gravará um espaço em branco e pensará que tem um registro.
MARCELOHF está ai o banco de dados vazio.
Agradeço a todos o interesse em me ajudar.
Desta forma será realmente mais facil vcs me ajudarem, vaelus mesmo.
Agradeço a todos o interesse em me ajudar.
Desta forma será realmente mais facil vcs me ajudarem, vaelus mesmo.
Tópico encerrado , respostas não são mais permitidas