Talkcine Postado Abril 18, 2005 Denunciar Share Postado Abril 18, 2005 Olá pessoal, estou quebrando a cabeça para resolver um probleminha com meu formulário asp.Ontem eu o testei e consegui inserir os dados em todos os campos do banco, normalmente. Já hoje eu recebo a seguinte mensagem:Microsoft OLE DB Provider for ODBC Drivers error '80040e07' [Microsoft][Driver ODBC para Microsoft Access] Data type mismatch in criteria expression. cad1.asp, line 40 O script completo é:<%user_name=request.form("user_name")password=request.form("password")f_name=request.form("f_name")l_name=request.form("l_name")cnpj=request.form("cnpj")ie=request.form("ie")addr1=request.form("addr1")city=request.form("city")state=request.form("state")postalcode=request.form("postalcode")phone=request.form("phone")email=request.form("email")fax=request.form("fax")Resp=request.form("resp")f_namefis=request.form("f_namefis")cpf=request.form("cpf")addr2=request.form("addr2")cityfis=request.form("cityfis")statefis=request.form("statefis")postalcodefis=request.form("postalcodefis")phonefis=request.form("phonefis")faxfis=request.form("faxfis")emailfis=request.form("emailfis")credenciado=request.form("credenciado")loja=request.form("loja")assist=request.form("assist")notes1=request.form("notes1")notes=request.form("notes")mailing_list=request.form("mailing_list")set conexao = server.createObject("adodb.connection")conexao.open "topcadastro"SQL = "Insert into users (user_name, password, f_name, l_name, email, addr1, addr2, city, cityfis, state, postalcode, postalcodefis, phone, notes, notes1, mailing_list, cnpj, ie, cpf, resp, assist, loja, fax, faxfis, f_namefis, statefis, phonefis, emailfis, credenciado)" SQL = SQL + "values('"+user_name+"','"+password+"', '"+f_name+"', '"+l_name+"', '"+email+"', '"+addr1+"', '"+addr2+"','"+city+"', '"+cityfis+"', '"+state+"', '"+postalcode+"', '"+postalcodefis+"', '"+phone+"', '"+notes+"', '"+notes1+"','"+mailing_list+"','"+cnpj+"','"+ie+"','"+cpf+"', '"+resp+"', '"+assist+"', '"+loja+"', '"+fax+"', '"+faxfis+"','"+f_namefis+"', '"+statefis+"', '"+phonefis+"', '"+emailfis+"', '"+credenciado+"')"conexao.execute(sql) conexao.close%>A linha 40 é conexao.execute(sql)Quem puder me ajude, por favor!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Abril 18, 2005 Denunciar Share Postado Abril 18, 2005 voce esta tentando gravar um dado incompativel com o tipo definido na estrutura da tabela, tipo gravando letras em campos numérios o colocando aspas simples em campos numéricos, ou deixando de colocar aspas em campos do tipo texto.para ficar mais facil achar o erro faça isso:<%user_name=request.form("user_name")password=request.form("password")f_name=request.form("f_name")l_name=request.form("l_name")cnpj=request.form("cnpj")ie=request.form("ie")addr1=request.form("addr1")city=request.form("city")state=request.form("state")postalcode=request.form("postalcode")phone=request.form("phone")email=request.form("email")fax=request.form("fax")Resp=request.form("resp")f_namefis=request.form("f_namefis")cpf=request.form("cpf")addr2=request.form("addr2")cityfis=request.form("cityfis")statefis=request.form("statefis")postalcodefis=request.form("postalcodefis")phonefis=request.form("phonefis")faxfis=request.form("faxfis")emailfis=request.form("emailfis")credenciado=request.form("credenciado")loja=request.form("loja")assist=request.form("assist")notes1=request.form("notes1")notes=request.form("notes")mailing_list=request.form("mailing_list")set conexao = server.createObject("adodb.connection")conexao.open "topcadastro"SQL = "Insert into users (user_name, password, f_name, l_name, email, addr1, addr2, city, cityfis, state, postalcode, postalcodefis, phone, notes, notes1, mailing_list, cnpj, ie, cpf, resp, assist, loja, fax, faxfis, f_namefis, statefis, phonefis, emailfis, credenciado)"SQL = SQL + "values('"+user_name+"','"+password+"', '"+f_name+"', '"+l_name+"', '"+email+"', '"+addr1+"', '"+addr2+"','"+city+"', '"+cityfis+"', '"+state+"', '"+postalcode+"', '"+postalcodefis+"', '"+phone+"', '"+notes+"', '"+notes1+"','"+mailing_list+"','"+cnpj+"','"+ie+"','"+cpf+"', '"+resp+"', '"+assist+"', '"+loja+"', '"+fax+"', '"+faxfis+"','"+f_namefis+"', '"+statefis+"', '"+phonefis+"', '"+emailfis+"', '"+credenciado+"')"response.write sqlresponse.endconexao.execute(sql)conexao.close%>depois post o resultado aki pra gente avaliar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Talkcine Postado Abril 18, 2005 Autor Denunciar Share Postado Abril 18, 2005 Obrigado cyberalexxx pela ajuda. Eu coloquei o script e retornaram as linhas:Insert into users (user_name, password, f_name, l_name, email, addr1, addr2, city, cityfis, state, postalcode, postalcodefis, phone, notes, notes1, mailing_list, cnpj, ie, cpf, resp, assist, loja, fax, faxfis, f_namefis, statefis, phonefis, emailfis, credenciado)values('teste','teste', '', '', '', '', '','', '', '', '', '', '', '', '','1','','','', '', '', '', '', '','', '', '', '', '')O que você acha? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Abril 18, 2005 Denunciar Share Postado Abril 18, 2005 1 - Todos os campos são do tipo texto???2 - Os campos estão setados para permitir comprimento zero???Acho q pode ser isso. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Talkcine Postado Abril 18, 2005 Autor Denunciar Share Postado Abril 18, 2005 Além de textos, alguns campos são do tipo memorando e checkbox (sim/não).Quanto ao comprimento zero, vou dar uma olhada melhor e retorno. Obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Abril 18, 2005 Denunciar Share Postado Abril 18, 2005 Além de textos, alguns campos são do tipo memorando e checkbox (sim/não).Quanto ao comprimento zero, vou dar uma olhada melhor e retorno. Obrigado. Se não tem campo numérico entaum sua sintaxe esta correta, vamos aguardar entaum o resultado sobre a estrutura da tabela. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Talkcine Postado Abril 18, 2005 Autor Denunciar Share Postado Abril 18, 2005 Estou com dúvidas sobre as configurações dos campos INDEXADO e COMPRIMENTO ZERO: o correto é (para Indexado) Sim, duplicação não autorizada; e para Comprimento zero sim ou não?Pode estar aí minha solução!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Abril 18, 2005 Denunciar Share Postado Abril 18, 2005 para permitir campos em branco voce deve colocar comprimento zero = sim Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Talkcine Postado Abril 18, 2005 Autor Denunciar Share Postado Abril 18, 2005 Por favor, cyberalexxx, me dê uma clareada: usando response.write sql eu não estarei pedindo o retorno dos dados do formulário em texto e não inserindo os dados no meu BD? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Abril 19, 2005 Denunciar Share Postado Abril 19, 2005 Por favor, cyberalexxx, me dê uma clareada: usando response.write sql eu não estarei pedindo o retorno dos dados do formulário em texto e não inserindo os dados no meu BD? Realmente não ira gravar akilo foi só pra identificar o erro, voce deve tirar o response.end para o script continuar e realizar a gravação Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Talkcine
Olá pessoal, estou quebrando a cabeça para resolver um probleminha com meu formulário asp.
Ontem eu o testei e consegui inserir os dados em todos os campos do banco, normalmente. Já hoje eu recebo a seguinte mensagem:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][Driver ODBC para Microsoft Access] Data type mismatch in criteria expression. cad1.asp, line 40
O script completo é:
<%
user_name=request.form("user_name")
password=request.form("password")
f_name=request.form("f_name")
l_name=request.form("l_name")
cnpj=request.form("cnpj")
ie=request.form("ie")
addr1=request.form("addr1")
city=request.form("city")
state=request.form("state")
postalcode=request.form("postalcode")
phone=request.form("phone")
email=request.form("email")
fax=request.form("fax")
Resp=request.form("resp")
f_namefis=request.form("f_namefis")
cpf=request.form("cpf")
addr2=request.form("addr2")
cityfis=request.form("cityfis")
statefis=request.form("statefis")
postalcodefis=request.form("postalcodefis")
phonefis=request.form("phonefis")
faxfis=request.form("faxfis")
emailfis=request.form("emailfis")
credenciado=request.form("credenciado")
loja=request.form("loja")
assist=request.form("assist")
notes1=request.form("notes1")
notes=request.form("notes")
mailing_list=request.form("mailing_list")
set conexao = server.createObject("adodb.connection")
conexao.open "topcadastro"
SQL = "Insert into users (user_name, password, f_name, l_name, email, addr1, addr2, city, cityfis, state, postalcode, postalcodefis, phone, notes, notes1, mailing_list, cnpj, ie, cpf, resp, assist, loja, fax, faxfis, f_namefis, statefis, phonefis, emailfis, credenciado)"
SQL = SQL + "values('"+user_name+"','"+password+"', '"+f_name+"', '"+l_name+"', '"+email+"', '"+addr1+"', '"+addr2+"','"+city+"', '"+cityfis+"', '"+state+"', '"+postalcode+"', '"+postalcodefis+"', '"+phone+"', '"+notes+"', '"+notes1+"','"+mailing_list+"','"+cnpj+"','"+ie+"','"+cpf+"', '"+resp+"', '"+assist+"', '"+loja+"', '"+fax+"', '"+faxfis+"','"+f_namefis+"', '"+statefis+"', '"+phonefis+"', '"+emailfis+"', '"+credenciado+"')"
conexao.execute(sql)
conexao.close
%>
A linha 40 é conexao.execute(sql)
Quem puder me ajude, por favor!!!
Link para o comentário
Compartilhar em outros sites
9 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.