SQL - Generar

 
Vista:

Generar

Publicado por LuisDa Artavia (2 intervenciones) el 04/04/2013 17:42:33
Buenos días gente, un gran saludo!

Espero me puedan ayudar.

Ocupo modificar una serie, generando otra nueva pero que 'recuerde' los mismos valores previos.

Ejemplo.

Ocupo una base de datos de una Aseguradora, pero no me la quieren dar por tener el ID de cada persona con su respectivo historial... por eso ocupo enviarles un script que les modifique esos numeros de ID, generando un numero nuevo para cada ID y que lo recuerde para las veces que se repita en la base. O sea, que recuerde los ID cuando se repitan... en la nueva serie generada.

Muchas gracias por cualquier asistencia!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 806
Bronce
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Generar

Publicado por leonardo_josue (1173 intervenciones) el 04/04/2013 19:00:35
Hola LuisDa Artavia:

No entendí ni media palabra ...

Vayamos por partes:

1. ¿Qué motor de BD estás utilizando?
2. ¿A qué te refieres con "modificar una serie", ¿te refieres a modificar una tabla?, ¿Te refieres a modificar algún campoo de esa tabla?, ¿Agregar una nueva columna? ¿Qué es lo que quieres hacer?
3. ¿A qué te refieres con "que 'recuerde' los mismos valores previos", esto quiere decir que el dato debe persistir?
4. con respecto al ejemplo, debes tener mucho, pero en verdad mucho ojo si lo que estás tratando de hacer es modificár las llaves primarias de una tabla, como dices, cada persona está ligada aun historial, por lo que lo más probable es que existan referencias de llaves foráneas entre las tablas. Dependerá de cómo definiste la llave foráneas, si para actualizarse en cascada o restringiendo estas actualizaciones... Ahora bien, SI NO EXISTEN LLAVES FORÁNEAS y tú modificas la llave primaria de alguna tabla, entonces tendrás una pérdida de referencias, por lo que tu información pasará a ser simplemente un montón de basura.

Te pido que trates de explicarnos mejor qué es lo que quieres hacer... puedes poner algún ejemplo con la estructura de tus tablas, algunos datos de ejemplo y decirnos visualmente qué es lo que pretendes hacer. Tómate tu tiempo, no es necesario que pongas mucho texto, peso si que trates de ser lo más claro que puedas.

Saludos
Leo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

New Anonymous ID

Publicado por LuisDa Artavia (2 intervenciones) el 04/04/2013 19:36:03
Discúlpame, gracias por responderme!
Claramente apenas estoy iniciándome en este mundo del SQL. =P

Vamos a ver.

1. La base de datos la tiene la Aseguradora, se encuentra en SQL pero desconozco la version.

2. Ocupo cambiar los valores de ID (numero de cédula) de cada persona a un numero nuevo (esto se encuentra a lo largo de una columna); como es un historial, pues el nuevo numero de ID debe mantenerse para cada ID viejo.

3. Ejemplo.

Si yo tengo el numero de cedula 12345 y tu 54321, debo generar otro numero para cada uno. Puede ser 1 para mi y 2 para ti; pero que si yo tengo dos entradas en el historial (tuve dos accidentes y por eso me registraron dos veces en la base).. que cada vez que lea 12345, el nuevo numero sea únicamente 1. En conclusión.. que me identifique el individuo.

4. No ocupo eliminar ni modificar sustancialmente ninguna informacion. Solo es como 'editar' una columna.

Espero me haya dado a entender mejor,
Mis disculpas nuevamente.
Muchisimas gracias!
LDA

http://www.ats.ucla.edu/stat/sas/faq/randid.htm

Este es un ejemplo, pero para otro sistema.. y pues no quiero eliminar duplicados.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 806
Bronce
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

New Anonymous ID

Publicado por leonardo_josue (1173 intervenciones) el 04/04/2013 20:28:24
Hola de nuevo...

Hagamos algunas aclaraciones... SQL no es un motor de Base de Datos, es un lenguaje de consultas, que es muy distinto. Motores de BD pueden ser MySQL, SQL Server, Oracle, Firebird, PostreSQL, y muchos más

Para entender las diferencias puedes pedirle ayuda a Santa WIKIPEDIA:

http://es.wikipedia.org/wiki/Sistema_de_gesti%C3%B3n_de_bases_de_datos
http://es.wikipedia.org/wiki/SQL

Es por eso que es tan importante que nos digas con qué estás trabajando, pues la solución puede varia muchísimo entre un motor y otro.

Ahora bien, es muy importante que nos digas cuál es la estructura de tus tablas, y que nos pongas algunos datos de ejemplo, pues de eso depende mucho de lo que se pueda hacer... no entiendo a qué te refieres con estár registrado dos veces en en la tabla, sería conveniente que nos pongas algunos datos de ejemplo para entender mejor cuál es el problema...

Por lo que entiendo, es que vas a necesitar hacer uso de algunas tablas de paso o temporales, para hacer lo que quieres, pero te repito, eso te lo puedo aclarar una vez que me des mas detalles acerca de tu problema.

Saludos
Leo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar