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

ASP y Acces

Estas en el tema de ASP y Acces en el foro de ASP Clásico en Foros del Web. Hola a todos, por si acaso ya lei los posteos de acces, pero nunca habia trabajado con acces del Office XP y ASP, solo con ...
  #1 (permalink)  
Antiguo 27/06/2003, 16:08
Avatar de mazingerz  
Fecha de Ingreso: febrero-2003
Ubicación: Sarasota FL
Mensajes: 147
Antigüedad: 21 años, 3 meses
Puntos: 0
ASP y Acces

Hola a todos, por si acaso ya lei los posteos de acces, pero nunca habia trabajado con acces del Office XP y ASP, solo con SQL Server y ningun problema,
bueno este es el codigo, con el selecet funciona bien y veo los datos pero al actualizar no

strCnn = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db/especificaciones.mdb")
Set cnn = Server.CreateObject ("ADODB.Connection")
Cnn.Open strCnn
str= "UPDATE empresas SET id_empresa=1, empresa='BETONSA S.A.' , direccion='Donde vivo yo' , comuna='Puente Alto' , ciudad='Santiago' , contacto='Yo mismo' , telefono='(56)(2)555 5555' , fax='(56)(2)555 1111' , mail='[email protected]' , url='http://www.betonsa.cl' WHERE id_empresa=1 "
set Rst = Cnn.Execute (str)
set Rst = nothing

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
El id es el unico numerico, y los demas texto

Gracias....
  #2 (permalink)  
Antiguo 27/06/2003, 20:20
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 22 años, 3 meses
Puntos: 1
Leete estos ejemplos:
http://faqsdelweb.com/index.php?num=3&f_id=2&s_id=15
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net
  #3 (permalink)  
Antiguo 02/07/2003, 07:49
Avatar de mazingerz  
Fecha de Ingreso: febrero-2003
Ubicación: Sarasota FL
Mensajes: 147
Antigüedad: 21 años, 3 meses
Puntos: 0
Estimado Maestro; Mira la verdad es que lei lo del linmk que me enviaste, pero es justamente lo que a mi me funciona una consulta del tipo Select, lo que no me esta funcionando es el update e insert con el metodo execute, tu demo de lo que necesito esta asi
******************
Tenemos que tener una base de datos con un campo por ejemplo de tipo autonumerico (ID), esto nos permite loscalizar el dato como indice.
(En desarrollo)

Muestra.asp
<%
%>

Edita.asp
<%
%>

Modifica.asp
<%
%>
******************
He escrito esto y solo cambie el provider de SQL Server a MS Jet, pero me da error, baje el ultimo MDAC, Services Pack, pero no logro dar con la solucion, mira estoy usando WinXP y Acces del Office XP. Si a lo mismo le coloco un SELECT funciona bien.


strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("db/especificaciones.mdb")&";"
Set cnn = Server.CreateObject ("ADODB.Connection")
Cnn.Open strCnn
set Rst = Cnn.Execute ("UPDATE empresas SET empresas.id_empresa=1, empresas.empresa='BETONSA S.A.' WHERE empresas.id_empresa=1")
set Rst = nothing


Microsoft JET Database Engine (0x80004005)
Operation must use an updateable query.
/construccion/empresas.asp, line 64


  #4 (permalink)  
Antiguo 02/07/2003, 08:10
Avatar de AlexNV  
Fecha de Ingreso: junio-2003
Ubicación: Madrid
Mensajes: 289
Antigüedad: 20 años, 11 meses
Puntos: 1
por que no pruebas a crearte un comando?

Dim cmm As adodb.Command
Set cmm = New adodb.Command
cmm.ActiveConnection = cnn
cmm.CommandText = "UPDATE..."
cmm.CommandType = adCmdText
nRegistros = cmm.Execute

Yo siempre lo hago así y nunca me da problemas.
  #5 (permalink)  
Antiguo 02/07/2003, 08:25
Avatar de mazingerz  
Fecha de Ingreso: febrero-2003
Ubicación: Sarasota FL
Mensajes: 147
Antigüedad: 21 años, 3 meses
Puntos: 0
AlexNV, gracias por responder, pero la sintaxis
Dim cmm As adodb.Command
Es de visual basic, el AS en Script da error, o es que lo haces a travez de un componente COM+ ??
  #6 (permalink)  
Antiguo 02/07/2003, 08:31
Avatar de AlexNV  
Fecha de Ingreso: junio-2003
Ubicación: Madrid
Mensajes: 289
Antigüedad: 20 años, 11 meses
Puntos: 1
Perdón, me equivoqué.
Por supuesto el Dim no se pone.

Me dejé guiar por la costumbre.

Un saludo y gracias por la rectificación.
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 02:23.