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

No coinciden los tipos de datos AYUDA URGENE

Estas en el tema de No coinciden los tipos de datos AYUDA URGENE en el foro de ASP Clásico en Foros del Web. Hola amigos. Bueno, mi problema es el siguiente: Quiero que los usuarios puedan actualizar datos a traves de una pag. web en una BD Access. ...
  #1 (permalink)  
Antiguo 24/06/2004, 00:45
 
Fecha de Ingreso: enero-2002
Mensajes: 30
Antigüedad: 22 años, 5 meses
Puntos: 0
No coinciden los tipos de datos AYUDA URGENE

Hola amigos.
Bueno, mi problema es el siguiente: Quiero que los usuarios puedan actualizar datos a traves de una pag. web en una BD Access. Primero hago un listado de los coches que estan almacenados en la BD, esto funciona, despues he puesto un boton modificar que los lleva a otra pag. en la cual muestra el coche que desean modificar, tambien funciona, el problema es que cuando modifican algo da el siguiente error:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][Controlador ODBC Microsoft Access] No coinciden los tipos de datos en la expresión de criterios.

/usados/actualizar3.asp, line 73

He revisado los campos de la BD para ver el tema de las comillas, pero estan bien puestas, despues he probado probado campo por campo y en todos me da errror, por lo que el fallo debe de estar en el where...Ah, he perdido la cuenta de las veces que he modificado el where...al ID lo he puesto con comillas simples, sin comillas y mil cosas mas, pero nada. Llevo con esto dos semanas y la verdad es que el jefe ya esta cansado de este tema y tengo un serio problema como no solucione el problema hoy mismo, por favor ayudarme. El codigo de las paginas es el siguiente:

insertarcoche_brunotellier.asp (Esta pagina muestra los coches y llama a la otra en donde se deben modificar)

<%
'Instanciamos y abrimos nuestro objeto conexion
Set Conn = Server.CreateObject("ADODB.Connection")
xconcesionario=("Bruno Tellier")
Conn.Open "DSN=motorpoint.com.guia_usados"
%>
</p>
<%
'Creamos la sentencia SQL y la ejecutamos
sSQL="Select codigo From USADOS where concesionario ='"&xconcesionario&"'"
set RS = Conn.Execute(sSQL)
%>
<%

Set oConn = Server.CreateObject("ADODB.Connection")
xconcesionario=("Bruno Tellier")
xcodigo=("codigo")
oConn.Open "DSN=mi conexion"

strSQL = "SELECT id, Marca, Modelo, Tipo, Precio, Ano, Km, Combustible, Color, Sistema, codigo FROM USADOS where concesionario ='"&xconcesionario&"'"
Set objRS = oConn.Execute(strSQL)

%>
<%

while (not objRS.Eof)
Response.Write("<tr><td>&nbsp;" & objRS("Marca") & "</td><td>&nbsp;" & objRS("Modelo") & "</td><td>&nbsp;" & objRS("Tipo") & "</td><td>&nbsp;" & objRS("Precio") & "</td><td>&nbsp;" & objRS("Ano") & "</td><td>&nbsp;" & objRS("Km") & "</td><td>&nbsp;" & objRS("Combustible") & "</td><td>&nbsp;" & objRS("Sistema") & "</td><td>&nbsp;" & objRS("Codigo") & "</td><td>&nbsp;<a href=""actualizar2.asp?id=" & objRS("id") &""">Modificar</a></td></tr>")
objRS.MoveNext
wend

oConn.Close
set objRS = nothing
set oConn = nothing

%>

actualizar2.asp (en esta pagina se recoge al coche que debe ser modificado)


<%
id=request.querystring("id")
set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
concesionario=("Bruno Tellier")
oConn.Open "DSN=mi conexion..."

SQL="SELECT * FROM USADOS where id = " & request.querystring("id")

rs.Open SQL, oConn

%>
</div>
<table width="566" border="0">
<tr>
<td><span class="style39">Marca: </span></td>
<td><input type="TEXT" name="Marca" value="<%=rs.Fields("Marca")%>"></td>
<td><span class="style39">Modelo:</span></td>
<td><input type="TEXT" name="Modelo" value="<%=rs.Fields("Modelo")%>"></td>
</tr>
<tr>
<td><span class="style39">Tipo:</span></td>
<td><input type="TEXT" name="Tipo" value="<%=rs.Fields("Tipo")%>"></td>
<td><span class="style39">Precio:</span></td>
<td><input type="TEXT" name="Precio" value="<%=rs.Fields("Precio")%>"></td>
</tr>
<tr>
<td><span class="style39">Año:</span></td>
<td><input type="TEXT" name="Ano" value="<%=rs.Fields("Ano")%>"></td>
<td><span class="style39">KM:</span></td>
<td><input type="TEXT" name="KM" value="<%=rs.Fields("KM")%>"></td>
</tr>
<tr>
<td><span class="style39">Combustible:</span></td>
<td><input type="TEXT" name="Combustible" value="<%=rs.Fields("Combustible")%>"></td>
<td><span class="style39">Color:</span></td>
<td><input type="TEXT" name="Color" value="<%=rs.Fields("Color")%>"></td>
</tr>
</table>
<div align="center">
<p><br>
<input type="hidden" name="codigo" value="<%=rs.Fields("Codigo")%>">
</p>

actualizar3.asp (aqui se procesa la informacion y deberia actualizar, pero sale el error que antes mencione)

<%
if session("autorizacion")<>1 then response.redirect "login.asp"
usuario=session("usuario")
xpassword=request.form("password")
const adOpenKeyset=1
%>

<%
'Recogemos los valores del formulario
'Concesionario=Request.Form("Concesionario")
Marca= Request.Form("Marca")
Modelo= Request.Form("Modelo")
Tipo= Request.Form("Tipo")
Precio= Request.Form("Precio")
Ano= Request.Form("Ano")
KM= Request.Form("KM")
Combustible= Request.Form("Combustible")
Color= Request.Form("Color")
Pintura= Request.Form("Pintura")
Cuero= Request.Form("Cuero")
llantas= Request.Form("llantas")
airbagcon= Request.Form("airbagcon")
antiniebla= Request.Form("antiniebla")
airbagpas= Request.Form("airbagpas")
ordenador= Request.Form("ordenador")
airbagla= Request.Form("airbagla")
'ABS= Request.Form("ABS")
airbagtras= Request.Form("airbagtras")
GPS= Request.Form("GPS")
controltrac= Request.Form("controltrac")
climatizador= Request.Form("climatizador")
controlest= Request.Form("controlest")
AA= Request.Form("AA")
lluvia= Request.Form("lluvia")

'Instanciamos y abrimos nuestro objeto conexion
Dim Conn, rs, sSQL ' Declaro la variable
set rs=Server.CreateObject("ADODB.Recordset")
id=("id")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=mi conexion..."

'Ahora creamos la sentencia SQL
sSQL="Update USADOS Set Marca='" & Marca & "', Modelo='" & Modelo & "', Tipo='" & Tipo & "', Precio=" & Precio & ", Ano=" & Ano & ", KM='" & KM & "', Combustible='" & Combustible & "', Color='" & Color & "', Pintura='" & Pintura & "', Cuero='" & Cuero & "', Llantas='" & Llantas & "', airbagcon='" & airbagcon & "', antiniebla='" & antiniebla & "', airbagpas='" & airbagpas & "', ordenador='" & ordenador & "', airbagla='" & airbagla & "', airbagtras='" & airbagtras & "', GPS='" & GPS & "', controltrac='" & controltrac & "', climatizador='" & climatizador & "', controlest='" & controlest & "', AA='" & AA & "', lluvia='" & lluvia & "' where id ='"&id&"'"
'Ejecutamos la orden
set RS = Conn.Execute(sSQL)
%>
</p>
<%
'Cerramos el sistema de conexion
Conn.Close
%>
POR FAVOR AYUDA URGENTE ¿QUE PUEDO HACER?

Gracias a todos

Jose Maria.
  #2 (permalink)  
Antiguo 24/06/2004, 01:47
 
Fecha de Ingreso: enero-2002
Mensajes: 30
Antigüedad: 22 años, 5 meses
Puntos: 0
Ahora si que la he liado. He modificado el where y al actualizar un coche no me ha dado error, pero me HA ACTUALIZADO TODOS LOS COCHES DE LA BD. ¿Que puedo hacer? Por favor ayuda.
Gracias.
Jose Maria
  #3 (permalink)  
Antiguo 24/06/2004, 07:13
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
¿Podrias dar un response.write a la instrucción SQL antes de ejecutar copiarla y pegarla aquí para ver la sentencia?
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 18:37.