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

Problemas al insertar dato en bd

Estas en el tema de Problemas al insertar dato en bd en el foro de ASP Clásico en Foros del Web. Hola tengo que insertar dos campos en una base de datos pero no lo consigo, tengo un formulario que recoge datos personales y lo guarda ...
  #1 (permalink)  
Antiguo 03/08/2008, 10:11
 
Fecha de Ingreso: diciembre-2007
Mensajes: 179
Antigüedad: 16 años, 5 meses
Puntos: 0
Problemas al insertar dato en bd

Hola tengo que insertar dos campos en una base de datos pero no lo consigo, tengo un formulario que recoge datos personales y lo guarda en la base de datos perfect, pero aki no se que ocurre.

Código:
try{
				 var conexion= Server.CreateObject ("ADODB.Connection");
                	 conexion.Open ("Provider=Microsoft.Jet.OLEDB.4.0;"+" Data Source = "+Server.MapPath ("basedatos/bd.mdb"));
                	 }
                	 catch (e){
                	 Response.Write ("Error1:");
                	 Response.Write ("<b>" + e.description + "</b>");
                	 Response.End();}
			
				try{
				
					var codigo = Request.Form("codigo").Item;
					
					var SQL = "Insert Into pedido(nick,codigo) Values ('"+nick+"','"+codigo+"');";
		
				
                            conexion.BeginTrans();
							conexion.Execute(SQL);
							
							Response.write("Su producto ha sido añadido");
							
							
							
							}
							
					catch(e){//posible fallo en la BD
				Response.Write ("<h2 align=center >Error2:</h2>");
				Response.Write ("<b>" +e.description+ "</b>");
				Response.Write("<h4 align=center ><button onclick='history.back()'>Volver</button></h4>");
				Response.End();
			}				
		
								
			
			
			
		%>
Este es el codigo no da error de compilacion ni nada, es mas al final sale el response.write("el producto ha sido añadido"), como debe de ser pero despues no lo inserta en la tabla y no doy con el error que estoy cometiendo, pues hago pruebas como:

Código:
var SQL = "Insert Into pedido(nick,codigo) Values ('"+nick+"',"+codigo+");";
					Response.write(SQL);
					Response.End();
y los valores los esta cogiendo bien, el problema es que no inserta en la tabla.

Espero que me podais ayudar. Gracias

Última edición por xhisna; 03/08/2008 a las 17:44
  #2 (permalink)  
Antiguo 03/08/2008, 21:21
 
Fecha de Ingreso: agosto-2007
Mensajes: 106
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Problemas al insertar dato en bd

Hola!, no sé si sera por eso....pero yo cuando inserto una fila en la base de datos en la var SQL no pongo el primer ;

solo pongo el último

var sql = "INSERT INTO tabla(nick, codigo) VALUES ('"+nick+"', '"+codigo+"')";

prueba a ver....por si acaso

Byee
  #3 (permalink)  
Antiguo 04/08/2008, 04:12
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Respuesta: Problemas al insertar dato en bd

Hola,

¿Por que usas transacciones para una sentencia SQL tan sencilla? Las transacciones son interesantes cuando vas a realizar varios ataques contra la BD al mismo tiempo (insertar en varias tablas a la vez, insertar en una y modificar en otra, etc). En casos simples te recomiendo que no la uses.

De todas formas, recuerda validar la accion despues de abrir una transacción (commitTrans):

conn.beginTrans

try {

conn.execute("bla bla bla")

conn.commitTrans()

} catch(e) {

conn. rollbackTrans()
}


Un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -
  #4 (permalink)  
Antiguo 04/08/2008, 09:10
 
Fecha de Ingreso: diciembre-2007
Mensajes: 179
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Problemas al insertar dato en bd

Bueno problema resulto por ahora, gracias
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 20:15.