RETO 1
#21
Escrito 20 agosto 2010 - 09:21
Salud OS
#22
Escrito 20 agosto 2010 - 11:55
El problema que estoy resolviendo es pasarla a XML.
Estoy en eso...
#23
Escrito 20 agosto 2010 - 12:03
Los registros que tiene actualmente son:
TABLA TOTAL DE REGISTROS ======================================== PERSONAS 500,000 DOMICILIOS 100,000 CLIENTES 74,077 DOMICILIOS_CLIENTES 50,000 CIUDADES 800 ========================================
El archivo DEMO.FDB ocupa 80MB de espacio en disco (15MB Comprimido)
Este es el esquema de la base de datos:
/******************************************************************************/ /**** Generated by IBExpert 2005.09.25 20/08/2010 01:02:50 p.m. ****/ /******************************************************************************/ SET NAMES NONE; CREATE DATABASE 'C:\Archivos de programa\Firebird\Firebird_2_0\bin\DEMO.FDB' USER 'sysdba' PASSWORD 'masterkey' PAGE_SIZE 16384 DEFAULT CHARACTER SET NONE; /******************************************************************************/ /**** Tables ****/ /******************************************************************************/ CREATE TABLE CIUDADES ( ID_CIUDAD INTEGER NOT NULL, CIUDAD VARCHAR(40) NOT NULL, PAIS VARCHAR(40) NOT NULL ); CREATE TABLE CLIENTES ( ID_CLIENTE INTEGER NOT NULL, ID_PERSONA INTEGER, FECHA_INGRESO DATE NOT NULL, FECHA_ULTIMA_COMPRA DATE NOT NULL ); CREATE TABLE DOMICILIOS ( ID_DOMICILIO INTEGER NOT NULL, ID_CIUDAD INTEGER NOT NULL, CALLE VARCHAR(80) NOT NULL, CODIGO_POSTAL SMALLINT NOT NULL ); CREATE TABLE DOMICILIOS_CLIENTES ( ID_DOMICILIO_CLIENTE INTEGER NOT NULL, ID_DOMICILIO INTEGER NOT NULL, ID_CLIENTE INTEGER NOT NULL, CODIGO_TIPO_DOMICILIO INTEGER ); CREATE TABLE PERSONAS ( ID_PERSONA INTEGER NOT NULL, NOMBRE VARCHAR(40) NOT NULL, AP_PATERNO VARCHAR(20), AP_MATERNO VARCHAR(20), FECHA_NACIMIENTO DATE NOT NULL, CORREO_E VARCHAR(80), TELEFONO VARCHAR(40) ); CREATE TABLE TIPOS_DE_DOMICILIO ( CODIGO_TIPO_DOMICILIO INTEGER NOT NULL, DESCRIPCION_TIPO_DOMICILIO VARCHAR(40) NOT NULL ); /******************************************************************************/ /**** Unique Constraints ****/ /******************************************************************************/ ALTER TABLE CLIENTES ADD CONSTRAINT UNQ1_CLIENTES UNIQUE (ID_PERSONA); /******************************************************************************/ /**** Primary Keys ****/ /******************************************************************************/ ALTER TABLE CIUDADES ADD CONSTRAINT PK_CIUDADES PRIMARY KEY (ID_CIUDAD); ALTER TABLE CLIENTES ADD CONSTRAINT PK_CLIENTES PRIMARY KEY (ID_CLIENTE); ALTER TABLE DOMICILIOS ADD CONSTRAINT PK_DOMICILIOS PRIMARY KEY (ID_DOMICILIO); ALTER TABLE DOMICILIOS_CLIENTES ADD CONSTRAINT PK_DOMICILIOS_CLIENTES PRIMARY KEY (ID_DOMICILIO_CLIENTE); ALTER TABLE PERSONAS ADD CONSTRAINT PK_PERSONAS PRIMARY KEY (ID_PERSONA); ALTER TABLE TIPOS_DE_DOMICILIO ADD CONSTRAINT PK_TIPOS_DE_DOMICILIO PRIMARY KEY (CODIGO_TIPO_DOMICILIO); /******************************************************************************/ /**** Foreign Keys ****/ /******************************************************************************/ ALTER TABLE CLIENTES ADD CONSTRAINT FK_CLIENTES_1 FOREIGN KEY (ID_PERSONA) REFERENCES PERSONAS (ID_PERSONA); ALTER TABLE DOMICILIOS ADD CONSTRAINT FK_DOMICILIOS_1 FOREIGN KEY (ID_CIUDAD) REFERENCES CIUDADES (ID_CIUDAD); ALTER TABLE DOMICILIOS_CLIENTES ADD CONSTRAINT FK_DOMICILIOS_CLIENTES_1 FOREIGN KEY (ID_DOMICILIO) REFERENCES DOMICILIOS (ID_DOMICILIO); ALTER TABLE DOMICILIOS_CLIENTES ADD CONSTRAINT FK_DOMICILIOS_CLIENTES_2 FOREIGN KEY (ID_CLIENTE) REFERENCES CLIENTES (ID_CLIENTE); ALTER TABLE DOMICILIOS_CLIENTES ADD CONSTRAINT FK_DOMICILIOS_CLIENTES_3 FOREIGN KEY (CODIGO_TIPO_DOMICILIO) REFERENCES TIPOS_DE_DOMICILIO (CODIGO_TIPO_DOMICILIO);
Archivos adjuntos
#24
Escrito 20 agosto 2010 - 01:54
A mi la base de datos me parece perfecta para el reto.
¿ Porqué no utilizas fbExport para pasarla a CSV y csv2xml para convertirlo a xml ?.
http://fbexport.sourceforge.net/
http://csv2xml.sourceforge.net/
Pero creo que no deberíamos poner todos los datos en el XML, o habría que ponerlos de forma que algunos haya que calcularlos (como los ID de Relación).
Y es que en lugar de simplemente volcar los datos tal y como están, sería más interesante que mientras los vuelcas también tengas que hacer alguna operación con ellos (que es lo habitual encontrarse cuando importamos datos externos). Es que sino todos acabaremos haciendo lo mismo y poco tendrá de reto.
Cosas como que en el archivo XML no tengamos tabla de ciudades, y que la ciudad esté con toda su descripción en la tabla de Domicilios. De forma que durante la importación habrá que rellenar la tabla de ciudades con los valores distintos que haya para el campo CIUDAD en DOMICILIOS. Y establecer la relación con ellas, cuando añadamos los registros de domicilios.
#25
Escrito 20 agosto 2010 - 01:56
#26
Escrito 20 agosto 2010 - 02:06
Que envidia, de la buenaPor cierto, estoy de vacaciones y mañana voy a Francia a pasar una semana con mi padre, por lo que no sé si podré conectarme mucho durante los próximos días.
Que la pases muy bien amigo.
Saludos
#27
Escrito 20 agosto 2010 - 02:07
Por cierto, estoy de vacaciones y mañana voy a Francia a pasar una semana con mi padre, por lo que no sé si podré conectarme mucho durante los próximos días.
Ah vaya, pues entonces aguantamos a tu regreso para iniciar el reto
Salud OS
[off-topic]Sirve que tendremos una semana para analizar el asunto [/off-topic]
#28
Escrito 21 septiembre 2010 - 07:31
Salud OS
#29
Escrito 21 septiembre 2010 - 08:07
#30
Escrito 27 septiembre 2010 - 12:41
#31
Escrito 30 agosto 2012 - 06:37
Saludos
#32
Escrito 30 agosto 2012 - 10:33
Si logramos reunir por lo menos 5 participantes se reactiva la propuesta.
Ustedes dicen,
#33
Escrito 31 agosto 2012 - 01:25
Es broma
Si dais el script de la base de datos y el ficherito XML con los datos, me apunto
#34
Escrito 13 septiembre 2012 - 02:46
#35
Escrito 19 junio 2013 - 12:11
Que hay sobre el reto.
Saludos
#36
Escrito 19 junio 2013 - 02:18
#37
Escrito 20 junio 2013 - 10:29
Vamos retomando la idea y le ponemos fecha.
¿Les parece bien?
#38
Escrito 20 junio 2013 - 10:41
Me parece que aún conservo los datos que generé para el reto.
Vamos retomando la idea y le ponemos fecha.
¿Les parece bien?
Me parece muy bien
Saludos
[off-topic]Ya se le extraña compañero, no fué a la presentación de RAD esta ocasión, no se desaparezca tanto[/off-topic]
#39
Escrito 19 diciembre 2013 - 12:04
- Revisando foros que jamás habia revisado
#40
Escrito 19 diciembre 2013 - 12:30
Si, seguro que llegaríamos al hospital con una tremenda congestión alcohólica.
Jejeje
Salud