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>

Además 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 autonumérico, un campo texto(nombre), uno numérico(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 estarás componiendo mal la consulta?
Si el orden es el del fichero log creo que estás 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)&"')"