
28/08/2002, 12:14
|
| | Fecha de Ingreso: abril-2002
Mensajes: 438
Antigüedad: 23 años Puntos: 2 | |
Re: Cuestión de eficiencia Hola a los dos,
Os cuento más detallado: son sucursales y para cada sucursal hay que elaborar una hoja Excel con datos de productos y otra serie de tablas, pero en lo que es crítico es en el número de productos que se procesa (pensad que hay que tratar unas 200 sucursales con lo cual el número de productos influye mucho en el tiempo de generación del los .xls). Antes se hacía tratando con todos, ahora he de dar la opción de elegir unos cuantos. No puedo hacer un update general con un IN, ya que eso dejaría los anteriores marcados, es decir, si eligo la opción del nuevo campo deberé hacer 6000 updates obligatoriamente, así que por ahí no van los tiros. Como me convence mucho más la posibilidad de la BBDD que la del vector, en eso os doy la razón, he estado pensando y creo que me voy a decantar (ya me diréis que os parece) por un borrado del campo en la tabla, posterior inserción del campo de nuevo y update con los productos seleccionados dejando el resto al valor NULL original.
Algo del palo:
txtSQL = "alter table MITABLA drop ELCAMPO;"
Db.Execute txtSQL, dbSQLPassThrough
txtSQL = "alter table MITABLA add column ELCAMPO integer;"
Db.Execute txtSQL, dbSQLPassThrough
Paso de hacer 6000 updates a hacer entre 0 y 100, he hecho pruebas y la verdad es que funciona mucho más rápido.
Ya decís algo.
Muchas gracias a ambos. |