Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fabiosc80

Aonde está Wally?

Recommended Posts

Fix um update que ta me trazendo o seguinte erro:

 

Microsoft JET Database Engine error '80040e10'

 

No value given for one or more required parameters.

 

/ribas2/vender3.asp, line 326

 

Só que ta certo...Todos os campos não sao obrigatórios.

 

A linha 326 é a query do update: Oque pode ser????

 

olhem só:

 

Dim QUV,TUVQUV = QUV & "UPDATE produtos SET "QUV = QUV & "as_item_title = '" & as_item_title  & "',"QUV = QUV & "as_tipo_prod = '" & as_tipo_prod  & "',"QUV = QUV & "as_quatity_tot = " & int(as_quatity_tot)  & ","QUV = QUV & "compreja = '" & Compreja  & "',"QUV = QUV & "negnormal = '" & Negnormal  & "',"QUV = QUV & "preserva = '" & Preserva  & "',"QUV = QUV & "cjf = '" & cjf  & "',"QUV = QUV & "moedaf = '" & moedaf  & "',"QUV = QUV & "negf = '" & negf  & "',"QUV = QUV & "realum = '" & realum  & "',"QUV = QUV & "moedan = '" & moedan  & "',"QUV = QUV & "reservainicial = '" & reservainicial  & "',"QUV = QUV & "reservafinal = '" & reservafinal  & "',"QUV = QUV & "moedar = '" & moedar  & "',"QUV = QUV & "as_end_day = '" & as_end_day  & "',"QUV = QUV & "as_end_hour = '" & as_end_hour  & "',"QUV = QUV & "as_ext_pub = '" & as_ext_pub  & "',"QUV = QUV & "as_start_day = '" & as_start_day  & "',"QUV = QUV & "as_start_month = '" & as_start_month  & "',"QUV = QUV & "as_start_year = '" & as_start_year  & "',"QUV = QUV & "as_start_hour = '" & as_start_hour  & "',"QUV = QUV & "as_start_minute = '" & as_start_minute  & "',"QUV = QUV & "recadastra = '" & recadastra  & "',"QUV = QUV & "mercadaopago = '" & mercadaopago  & "',"QUV = QUV & "combinar = '" & combinar  & "',"QUV = QUV & "dinheiro = '" & dinheiro  & "',"QUV = QUV & "cheque = '" & cheque  & "',"QUV = QUV & "cartao = '" & cartao  & "',"QUV = QUV & "deposito = '" & deposito  & "',"QUV = QUV & "sedex_cobrar = '" & sedex_cobrar  & "',"QUV = QUV & "outros_p = '" & outros_p  & "',"QUV = QUV & "responsavel = '" & responsavel  & "',"QUV = QUV & "as_ship = '" & as_ship  & "',"QUV = QUV & "as_shipfix = '" & as_shipfix  & "',"QUV = QUV & "shipvar_sp = '" & shipvar_sp  & "',"QUV = QUV & "shipvar_sp_preco = '" & shipvar_sp_preco  & "',"QUV = QUV & "shipvar_mg = '" & shipvar_mg  & "',"QUV = QUV & "shipvar_mg_preco = '" & shipvar_mg_preco  & "',"QUV = QUV & "shipvar_df = '" & shipvar_df  & "',"QUV = QUV & "shipvar_df_preco = '" & shipvar_df_preco  & "',"QUV = QUV & "shipvar_ba = '" & shipvar_ba  & "',"QUV = QUV & "shipvar_ba_preco = '" & shipvar_ba_preco  & "',"QUV = QUV & "shipvar_ce = '" & shipvar_ce  & "',"QUV = QUV & "shipvar_ce_preco = '" & shipvar_ce_preco  & "',"QUV = QUV & "shipvar_ac = '" & shipvar_ac  & "',"QUV = QUV & "shipvar_ac_preco = '" & shipvar_ac_preco  & "',"QUV = QUV & "scorreios = '" & scorreios  & "',"QUV = QUV & "stransportadora = '" & stransportadora  & "',"QUV = QUV & "sacombinar = '" & sacombinar  & "',"QUV = QUV & "soutros = '" & soutros  & "',"QUV = QUV & "cidadelocal = '" & cidadelocal  & "',"QUV = QUV & "estadolocal = '" & estadolocal  & "',"QUV = QUV & "as_internacional = '" & as_internacional  & "',"QUV = QUV & "largura = '" & largura  & "',"QUV = QUV & "profundidade = '" & profundidade  & "',"QUV = QUV & "altura = '" & altura  & "',"QUV = QUV & "peso = '" & peso  & "',"QUV = QUV & "garantia = '" & garantia  & "',"QUV = QUV & "gravar = '" & gravar  & "'"QUV = QUV & " WHERE idprod = " &session("CodigoP")'response.write QUV'response.endSet TUV = BC.Execute(QUV)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Às vezes é um campo numérico que está trazendo null, e a SQL acaba ficando mais ou menos assim:update produtos set codigo = , campo = 'campo'repara que como o campo codigo é numérico, você não colocou aspas e o = juntou com o vírgula e deu esse erro......... acontece bastante comigomas só pra confirmar, dá um response.write na sua QUV e mostra pra nóis oq ele imprimiu na tela

Compartilhar este post


Link para o post
Compartilhar em outros sites

velhoto pra te dizer o seguinteAlguma das variaveis .. ou esta sem valor .. ou esta com algum valor nulo para algum dos campos do banco.Como descobrir qual?Testando um a um ..ou dando um Response.Write .. e usando o olhômetro..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nessa SQL gigantesca...o bom mesmo e dar uma olhada com calma..Já tentou fazer por partes??Tente atualizar de 5 em 5 campos, fica mais fácil para analisarPor que o erro apresentando diz, que esté faltando um campo, para atualizar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

rsja tentou dar um response.write na sql?pra facilitar .. poe no fim de cada linha .. &" <br>"assim ele vai quebrar em linhas.. e você vai poder olhar uma a uma..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alias o unico campo do update que é numérico é o "as_quatity_tot"

 

e tem uns que são sim ou não.

Alias um monte

 

Isso interfere?

 

olha oque veio:

 

UPDATE produtos SET as_item_title = 'titulo do produto', as_tipo_prod = 'S', as_quatity_tot = 10, compreja = 'I', negnormal = '', preserva = '', cjf = '100.00', moedaf = 'REA', negf = '.00', realum = '0', moedan = 'REA', reservainicial = '.00', reservafinal = '.00', moedar = 'REA', as_end_day = '7', as_end_hour = '0', as_ext_pub = '0', as_start_day = '15', as_start_month = '09', as_start_year = '2006', as_start_hour = '14', as_start_minute = '57', recadastra = '0', mercadaopago = '0', combinar = '-1', dinheiro = '-1', cheque = '0', cartao = '0', deposito = '-1', sedex_cobrar = '0', outros_p = '0', responsavel = 'Comprador', as_ship = 'F', as_shipfix = '10.00', shipvar_sp = '', shipvar_sp_preco = '', shipvar_mg = '', shipvar_mg_preco = '', shipvar_df = '', shipvar_df_preco = '', shipvar_ba = '', shipvar_ba_preco = '', shipvar_ce = '', shipvar_ce_preco = '', shipvar_ac = '', shipvar_ac_preco = '', scorreios = '0', stransportadora = '0',sacombinar = '0', soutros = '0', cidadelocal = 'Sao Paulo', estadolocal = 'SAO PAULO', as_internacional = 'Y', largura = '10', profundidade = '12', altura = '100', peso = '1202', garantia = '14455', gravar = '-1' WHERE idprod = 33

Compartilhar este post


Link para o post
Compartilhar em outros sites

claro que interfere...campo sim e não(true/false) são do tipo inteiro pois retornam 0 ou -1, apenas retire as aspas simpes no sql dos campos que são true ou false esqueci...o campo do tipo numero também retire as aspas simples

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora deu isso aqui:

 

 

Microsoft JET Database Engine error '80040e14'

 

Syntax error in UPDATE statement.

 

/ribas2/vender3.asp, line 353

 

 

Lembro que campo sim/não eu colocava com aspas duplas se não me engano..

 

Olha como ficou:

 

UPDATE produtos SET as_item_title = 'titulo do produto', as_tipo_prod = 'S', as_quatity_tot = 10, compreja = 'I', negnormal = '', preserva = '', cjf = '100.00', moedaf = 'REA', negf = '', realum = 0, moedan = 'REA', reservainicial = '', reservafinal = '', moedar = 'REA', as_end_day = '7', as_end_hour = '0', as_ext_pub = 0, as_start_day = '15', as_start_month = '09', as_start_year = '2006', as_start_hour = '14', as_start_minute = '57', recadastra = '0', mercadaopago = 0, combinar = -1, dinheiro = -1, cheque = 0, cartao = 0, deposito = -1, sedex_cobrar = 0, outros_p = 0, responsavel = 'Comprador', as_ship = 'F', as_shipfix = '10.00', shipvar_sp = '', shipvar_sp_preco = '', shipvar_mg = '', shipvar_mg_preco = '', shipvar_df = '', shipvar_df_preco = '', shipvar_ba = '', shipvar_ba_preco = '', shipvar_ce = '', shipvar_ce_preco = '', shipvar_ac = '', shipvar_ac_preco = '', scorreios = 0, stransportadora = 0, sacombinar = 0, soutros = 0, cidadelocal = 'Sao Paulo', estadolocal = 'SAO PAULO', as_internacional = 'Y', largura = '10', profundidade = '12', altura = '100', peso = '1202', garantia = '14455', gravar = -1 WHERE idprod = 33

Compartilhar este post


Link para o post
Compartilhar em outros sites

Divide essa query em partes, e tenta rodar separado..... o pedaço que der erro você verifica qual o tipo do campo e seu valorps.: se não me engano, campo sim/não é 0 e 1... não -1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah ta... é que faz tempo que já não uso campos desse tipo, agora só uso como numérico mesmobom, testa em partes e ve onde deu erro

Compartilhar este post


Link para o post
Compartilhar em outros sites

ultra, eu também tinha essa lógica de 0 e 1, mas não sei porque o access parece que trabalha com -1 e 0. Se qlguem ai souber explicar seria muito válido pois evitaria problemas numa troca de banco de dados pois saberiamos como usar o campo true e false

Bom ja que nao acho o erro, só resta testar por partes mesmo.O f*** é que sao uns 70 campos.

as variaveis que estão com valores numericos estão no banco como string ou numero?parece que um ou mais campos na sua tabela são numericos e você está passando como texto(principalmente pq você guarda a data separando o dia,mes e ano e estão sendo passados como texto, normalmente usamos tipo numérico)

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse campo recadastra = '0', é true e false?tem outros campos que recebem valo 0, possivelmente sejam true ou false mas estão com aspas simples ' '

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo visto você está usando BD Access........bom, para campos Sim/Não use -1 e 0 (sem aspas)para campos texto, use aspaspara campos número, não use aspasdemais, use aspase testa os campos aí, uma dessas instruções está fora do formato do campo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.