Ir para conteúdo

POWERED BY:

Arquivado

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

valmello

[Resolvido] INSERT INTO em tabelas diferentes

Recommended Posts

Bom dia a todos!

 

Estou tentando inserir dados de um mesmo form em tabelas diferentes, porém está retornando o seguinte erro:

 

Tipo de erro:

Microsoft JET Database Engine (0x80040E14)

Caracteres encontrados após o final da instrução SQL.

/sys_systemcredi/CadCli.asp, line 43

 

O código gerado pelo DW está como segue, onde eu adicionei somente o que está em azul.

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/conexaobd.asp" -->
<%
Dim MM_editAction
MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME"))
If (Request.QueryString <> "") Then
  MM_editAction = MM_editAction & "?" & Server.HTMLEncode(Request.QueryString)
End If

' boolean to abort record edit
Dim MM_abortEdit
MM_abortEdit = false
%>
<%
If (CStr(Request("MM_insert")) = "form1") Then
  If (Not MM_abortEdit) Then
	' execute the insert
	Dim MM_editCmd

	Set MM_editCmd = Server.CreateObject ("ADODB.Command")
	MM_editCmd.ActiveConnection = MM_conexaobd_STRING
MM_editCmd.CommandText = "INSERT INTO tbUsuarios (NomeCli, EmailCli) VALUES (?, ?); INSERT INTO tbCliente (cpfCli, cnpjCli, NomeCli, FantasiaCli, EmailCli, EndCli, CompCli, BairroCli, CidadeCli, UFCli, CepCli, TelCli, CelCli, Atividade, Banco, Ag, Op, Conta, Dv) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
MM_editCmd.Prepared = true
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 202, 1, 14, Request.Form("cpfCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 202, 1, 18, Request.Form("cnpjCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param3", 202, 1, 40, Request.Form("NomeCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param4", 202, 1, 40, Request.Form("FantasiaCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param5", 202, 1, 40, Request.Form("EmailCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param6", 202, 1, 40, Request.Form("EndCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param7", 202, 1, 15, Request.Form("CompCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param8", 202, 1, 15, Request.Form("BairroCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param9", 202, 1, 15, Request.Form("CidadeCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param10", 202, 1, 2, Request.Form("UFCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param11", 202, 1, 9, Request.Form("CepCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param12", 202, 1, 14, Request.Form("TelCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param13", 202, 1, 14, Request.Form("CelCli")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param14", 202, 1, 50, Request.Form("Atividade")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param15", 202, 1, 50, Request.Form("Banco")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param16", 202, 1, 50, Request.Form("Ag")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param17", 202, 1, 50, Request.Form("Op")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param18", 202, 1, 50, Request.Form("Conta")) ' adVarWChar
	MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param19", 202, 1, 50, Request.Form("Dv")) ' adVarWChar
	MM_editCmd.Execute
	MM_editCmd.ActiveConnection.Close

	' append the query string to the redirect URL
	Dim MM_editRedirectUrl
	MM_editRedirectUrl = "confirm.asp"
	If (Request.QueryString <> "") Then
	  If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0) Then
		MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
	  Else
		MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
	  End If
	End If
	Response.Redirect(MM_editRedirectUrl)
  End If
End If
%>

Grato pela colaboração!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Dia !

 

MM_editCmd.CommandText = "INSERT INTO tbUsuarios (NomeCli, EmailCli) VALUES (?, ?); INSERT INTO tbCliente (cpfCli, cnpjCli, NomeCli, FantasiaCli, EmailCli, EndCli, CompCli, BairroCli, CidadeCli, UFCli, CepCli, TelCli, CelCli, Atividade, Banco, Ag, Op, Conta, Dv) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"

 

Pq tem esse ; ?

 

acho mais simples fazer assim :

sql = "INSERT INTO tbUsuarios (NomeCli, EmailCli) VALUES (?, ?)"

sql1 = "INSERT INTO tbCliente (cpfCli, cnpjCli, NomeCli, FantasiaCli, EmailCli, EndCli, CompCli, BairroCli, CidadeCli, UFCli, CepCli, TelCli, CelCli, Atividade, Banco, Ag, Op, Conta, Dv) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"

 

Set rs = conn.execute(sql)

Set rs1 = conn.execute(sql1)

 

e é claro isto aqui para sabermos o que se passa:

 

 

IF ERR THEN

response.write "<p><b>Atenção! Ocorreu um erro na inserção dos dados!"

ELSE

response.write "<h2><center><b>Dados inseridos com sucesso!</b></center></h2>"

END IF

 

Abraços,

Vinicius Ianni

Compartilhar este post


Link para o post
Compartilhar em outros sites

é melhor separar em dois comandos de inserir mesmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Parabens pela solução

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.