Ayuda urgente

carmenzcruz
12 de Junio del 2002
Necesito mucha ayuda. Tengo este programa de asp:

<html>
<body>

<%
Dim zapa

Set Fso = CreateObject("Scripting.FileSystemObject")
Set Fichero = Fso.OpenTextFile(server.mappath("accesos.log"), 1)

set base= server.createobject("adodb.connection")
base.connectionstring="DSN=bdexamen"
base.open


do while not Fichero.AtEndOfStream
cadena = Fichero.ReadLine
zapa=split(cadena,",")


SQL = "insert into zapatos (nombre,valor,tipo) values ("&zapa(0)&", '"&zapa(1)&"', "&zapa(2)&")"

base.execute(SQL)


loop


base.close
Fichero.close

%>

</body>
</html>

Adems hay un fichero accessos.log con el siguiente contenido:

zapato1,1200,e
zapato2,13400,p
zapato3,124,e
.....
y una base de datos con un campo autonumrico, un campo texto(nombre), uno numrico(valor) y otro texto(tipo).

Mi problema es que me falla algo y no s qu es. ¿Podeis ayudarme?

GRACIAS.

Pakico
12 de Junio del 2002
Si me dices el error que te d, seguramente te podr ayudar mejor.

Yo normalmente a la hora de insertar o modificar en base de datos utilizo el objeto command:

la parte de la conexion igual
set cmd = Server.CreateObject("ADODB.Command")
cmd.ActiveConnection = base
cmd.TextCommand = SQL
cmd.Execute

Esto te sirve a parte, siempre que utilices, sql server, para obtener el id otorgado, con la consulta:
select @@identity

rapomon
12 de Junio del 2002
No estars componiendo mal la consulta?
Si el orden es el del fichero log creo que ests metiendo datos de tipo string sin las comillas simples:
SQL = "insert into zapatos (nombre,valor,tipo) values ("&zapa(0)&", '"&zapa(1)&"', "&zapa(2)&")"

Por si acaso utiliza siempre comillas simples:
SQL = "insert into zapatos (nombre,valor,tipo) values ('"&zapa(0)&"', '"&zapa(1)&"', '"&zapa(2)&"')"