Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/03/2006, 09:04
Avatar de mc_quake
mc_quake
 
Fecha de Ingreso: enero-2006
Ubicación: www.ecocargo.cl
Mensajes: 683
Antigüedad: 19 años, 3 meses
Puntos: 8
evitar insertar duplicados

hola tengo un pequeño problema miren tengo esta consultas Insert en sql (base de datos access)

Cita:
<%
Sub grabar (FECHA, HORA)
Hora_In_Sistemas= HORA
Fecha_In_Sistemas= FECHA
Hora_In_Sistemas = FormatDateTime(Hora_In_Sistemas, 4)
Entidad=Request.Form("ENTIDAD")
Dir_Entidad=Request.Form("DIRENTIDAD")
Ciu_Entidad=Request.Form("CIUDENTIDAD")
At_Entidad=Request.Form("ATENTIDAD")
Ord=Request.Form("ORD")
Dac=Request.Form("Dac")
Num_Subtel=Request.Form("NUMSUBTEL")
Fech_Ord=Request.Form("FECHORD")
Fech_In_Form=Request.Form("FECHINFORM")
Nom_Cliente=Request.Form("NOMCLIENTE")
Rut_Cliente=Request.Form("RUTCLIENTE")
Tele_Cliente=Request.Form("TELECLIENTE")
Dir_Cliente=Request.Form("DIRCLIENTE")
Ciu_Cliente=Request.Form("CIUCLIENTE")
Monto=Request.Form("MONTO")
Insistencia = Request.Form("Insistencia")
Materia = Request.Form ("Materia")
ID = Request.Form ("ID")

Set Conexion = Server.CreateObject ("ADODB.Connection")
Conexion.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Bases\Reclamo.mdb;"

IF ID <> "" then

IF Insistencia = "Con Insistencia" then
Fecha_Ven= Date()+ 4
else
Fecha_Ven= Date()+ 14
End If
Set Registros = Server.CreateObject("AdoDb.Recordset")
Sql = "INSERT INTO TEMP_RECLAMOS" _
& "(REC_ENTIDAD," _
& "REC_DIR_ENTIDAD," _
& "REC_CIU_ENTIDAD,"_
& "REC_ATE_ENTIDAD," _
& "REC_ORD, REC_DAC," _
& "REC_NUM_SUBTEL,"_
& "REC_FECHA_ORD," _
& "REC_FECHA_INGRE_FORM," _
& "REC_NOM_CLI," _
& "REC_RUT_CLI," _
& "REC_TEL_CLI," _
& "REC_DIR_CLI," _
& "REC_CIU_CLI,"_
& "REC_MONTO_REC," _
& "REC_INSISTENCIA," _
& "REC_F_INGRE_SISTEMA," _
& "REC_H_INGRE_SISTEMA," _
& "REC_MATERIA," _
& "REC_ID," _
& "REC_FECHA_VEN)" _
& "VALUES('"&Entidad&"', '"&Dir_Entidad&"'," _
& " '"&Ciu_Entidad&"', '"&At_Entidad&"', '"&Ord&"'," _
& " '"&Dac&"', '"&Num_Subtel&"', '"&Fech_Ord&"', '"&Fech_In_Form&"'," _
& " '"&Nom_Cliente&"', '"&Rut_Cliente&"', '"&Tele_Cliente&"'," _
& " '"&Dir_Cliente&"', '"&Ciu_Cliente&"', '"&Monto&"', '"&Insistencia&"'," _
& " '"&Fecha_In_Sistemas&"', '"&Hora_In_Sistemas&"','"&Materia&"', '"&ID&"', '"&Fecha_Ven&"');"
Conexion.Execute Sql
End If

Conexion.Close
Set Conexion = Nothing
End Sub

%>
los inserta correctamente todo bien pero me gustaria saber como puedo hacer para que cuando el usuario ingrese un registro que ya existe en la bese de datos me muestre un mensaje y no que me mande a una pagina donde muestra un error como esto

Cita:
Tipo de error:
Microsoft JET Database Engine (0x80004005)
Los cambios solicitados en la tabla no se realizaron correctamente porque crearían valores duplicados en el índice, clave principal o relación. Cambie los datos en el campo o los campos que contienen datos duplicados, quite el índice o vuelva a definir el índice para permitir entradas duplicadas e inténtelo de nuevo.
/PRUEBAS/Muestra/INGRESO/Reclamos.asp, line 63
ai alguin sabe como mostrar un mensaje algo asi (este registro ya existe en la base de datos, modifique los datos)

en ves de que me mande a una pagina donde muestra el error

de antemano gracias
__________________
Mc_Quake

Para ayudar en lo que se pueda:Zzz: