Foros del Web » Programando para Internet » ASP Clásico »

No insertar todos los campos

Estas en el tema de No insertar todos los campos en el foro de ASP Clásico en Foros del Web. hola de nuevo!! Pues nada que ahora acabo de hacer la inserción de un registro y eso y milagro!! me ha salido a la primera, ...
  #1 (permalink)  
Antiguo 31/03/2005, 02:56
 
Fecha de Ingreso: marzo-2005
Ubicación: Vitoria
Mensajes: 49
Antigüedad: 20 años, 1 mes
Puntos: 0
Sonrisa No insertar todos los campos

hola de nuevo!!
Pues nada que ahora acabo de hacer la inserción de un registro y eso y milagro!! me ha salido a la primera, pero tiene un pequeño fallo. Resulta que tengo un formulario con varios campos y luego lo envio a otra página que mete el registro. En la base de datos mdb sólo la clave primaria es obligatoria. Al enviar un formulario que le falte un campo que no sea la clave primaria me da un error de que debo meter ese campo (esto me pasa con cualquier campo que dejo libre) ¿cómo puedo quitar ese error? yo creo q es por el formulario cuando lo recojo, pero no lo sé. aqui v a el código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&Server.MapPath("ingenieria.mdb")&";"
SQL="SELECT * FROM articulos"
rs.Open SQL, oConn,1,3
rs.addnew
rs("referencia")=request("referencia")
rs("descripcion")=request("descripcion")
rs("dingles")=request("descing")
rs("checkinglist")=request("checkinglist")
rs("fichingles")=request("fiching")
rs("fichespl")=request("fichesp")
rs("plano")=request("plano")
rs("fotcat")=request("fotcat")
rs("linstr")=request("libinstr")
rs("fabricante")=request("fabricante")
rs("exportador")=request("exportador")
rs("activo")=1
rs.update
rs.close
oConn.close
%>
<html>
<head>
<title>Insertar</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.Estilo1 {
font-weight: bold;
font-style: italic;
color: #FF0000;
}
-->
</style>
</head>
<BODY BGCOLOR=#000000 text="#FFFFFF"" link="#FFFFFF"" vlink="#FF9900">
<div align="center" class="Estilo1">
<h1>Artículo insertado con éxito! </h1>
.....
  #2 (permalink)  
Antiguo 31/03/2005, 03:26
Avatar de Xculio  
Fecha de Ingreso: enero-2005
Ubicación: San Miguel de Basauri, muy cerquita de Bilbo
Mensajes: 42
Antigüedad: 20 años, 4 meses
Puntos: 0
Que error te da?????

De todos modos mirate a ver en la Base de datos:

Si es de acces --> Mirate de cada campo la regla de validación, permitir longitud 0 y/o requerido si/no

en sql no se como ira esto de lo que te hablo.

Esas ters cosas son las que suelen dar problemas del tipo que dices. Tambien, si la pagina es tuya propia y te la suda que se llene un poco de mierda la db puedes sustituir los "" por " " a la hora de meterlos o incluso poner un valor " " predeterminado en el campo desde la vista diseño de la tabla en la db.

Espero que me hayas entendido, prueba con lo que te he dicho y sino pon el error que te da para ver si se nos ocurre otra cosa..

Saludos.
  #3 (permalink)  
Antiguo 31/03/2005, 03:38
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 21 años, 5 meses
Puntos: 144
Prueba también a validar previamente si existe el dato en el formulario. Ejemplo:

Código:
if not IsNull(request("fiching")) or trim(request("fiching"))<>"" then rs("fichingles")=request("fiching")
Espero que te funcione...
  #4 (permalink)  
Antiguo 31/03/2005, 03:46
 
Fecha de Ingreso: marzo-2005
Ubicación: Vitoria
Mensajes: 49
Antigüedad: 20 años, 1 mes
Puntos: 0
yeeeeeeeeeeeejeeeeeeeeee

Hey era lo de permitir longitud cero, gracias xculio.
3pies me apunto el código.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:48.