Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

procedimientos anidados con mas de 32 niveles

Estas en el tema de procedimientos anidados con mas de 32 niveles en el foro de SQL Server en Foros del Web. Hola, estoy haciendo mi tesis and I need some help, please... ...estoy programando en T-SQL con SQL Server 2005 para extraer datos de una BD ...
  #1 (permalink)  
Antiguo 01/04/2014, 09:35
 
Fecha de Ingreso: febrero-2014
Mensajes: 6
Antigüedad: 10 años, 9 meses
Puntos: 0
Pregunta procedimientos anidados con mas de 32 niveles

Hola, estoy haciendo mi tesis and I need some help, please...
...estoy programando en T-SQL con SQL Server 2005 para extraer datos de una BD y tengo problemas porque los procedimientos alcanzan el nivel maximo de anidamiento que es 32...
Tengo las tablas:
CLUSTER(UID varchar(255))
ELEMENT(UID varchar(255), VALUE_FK varchar(255))
ITEM([UID] varchar(255),CLUSTER_FK varchar(255))
y DATA_VALUE(UID varchar(255), VALUE varchar(2000))

...un item puede ser de tipo cluster o element (o sea hay relacion de herencia), pero a su vez un cluster es un conjunto de items, que se obtienen por el CLUSTER_FK de CLUSTER... a donde quiero llegar es a obtener los element que son los elementos de interes con valores especificos ( element tiene relacion con DATA_VALUE por el VALUE_FK y este tiene los valores que necesito en VALUE)
Inicialmente tengo una lista de items, tengo un SP para item que verifica si es cluster o element y manda a ejecutar el SP correspondiente... tengo un sp para cluster que obtiene todos sus items y para cada hijo llama al sp de item y finalmente un sp para element que simplemente obtiene el valor que contiene la FK y lo inserta en una tabla de resultados.
El hecho es que como un cluster tiene muchos items, un item puede ser de tipo cluster y asi sucesivamente....(un cluster dentro de otro cluster muchas veces) el #max de anidamiento se sobrepasa...
Please, Anybody can help me?

PS:
Los cluster son elementos agrupadores, pero necesito obtener los datos organizadamente para insertarlos en otra BD o en una tabla, los datos obtenidos son datos clinicos por ejemplo: hemoglobina: 13, Leucocitos: 6, problema de salud: epilepsia. A traves de estas tablas abstractas -por el nombre- se guarda cualquier tipo de informacion clinica, quiero extraer esa informacion estructuradamente para guradarla en una estructuctura mas entendible...
  #2 (permalink)  
Antiguo 01/04/2014, 09:48
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: procedimientos anidados con mas de 32 niveles

por algo sql erver tiene el limite de 32 recursiones :P, habra que analizar tus tablas asi como tus datos para tratar de obtener el resultado que necesitas de otra forma..podrias poner un ejemplo de tus datos??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 01/04/2014, 11:04
 
Fecha de Ingreso: febrero-2014
Mensajes: 6
Antigüedad: 10 años, 9 meses
Puntos: 0
Información Respuesta: procedimientos anidados con mas de 32 niveles

Aqui pongo un ejemplo de mis datos:
El CLUSTER tiene simplemente IDs
column UID
402881713fd4d869013fd4e935cd0009
402881713fd4d869013fd4e93878004a
402881713fd4d869013fd4e9387a0061
402881713fd4d869013fd4e9387b0075
402881713fd4d869013fd4e9387c007e
...
-----------------ITEM --------------------
column UID
402881713fd4d869013fd4e935cd000b
402881713fd4d869013fd4e935cd000e
402881713fd4d869013fd4e935cd0011
402881713fd4d869013fd4e935cd0014
column CLUSTER_FK
402881713fd4d869013fd4e935cd0009
402881713fd4d869013fd4e935cd0009
402881713fd4d869013fd4e935cd0009
402881713fd4d869013fd4e935cd0009

----------------ELEMENT-----------------
column UID
402881713fd4d869013fd4e935cd000e
402881713fd4d869013fd4e935cd0011
402881713fd4d869013fd4e935cd0014
402881713fd4d869013fd4e935ce0018
402881713fd4d869013fd4e935ce001c
column VALUE_FK
402881713fd4d869013fd4e935cd0010
402881713fd4d869013fd4e935cd0013
402881713fd4d869013fd4e935ce0016
402881713fd4d869013fd4e935ce001a
402881713fd4d869013fd4e935ce001e

-----------------DATA_VALUE-----------
column UID
402881713fd4d869013fd4e935cd0010
402881713fd4d869013fd4e935cd0012
402881713fd4d869013fd4e935cd0013
402881713fd4d869013fd4e935ce0015
402881713fd4d869013fd4e935ce0016
402881713fd4d869013fd4e935ce0019
402881713fd4d869013fd4e935ce001a
402881713fd4d869013fd4e935ce001d
402881713fd4d869013fd4e935ce001e
column VALUE
12/07/2013 17:56:15
Tipo Evolución
Inicial
Estado Evolución
SEMANAEVALUACION
Evento de Atención
TA_INGRESO
Comentarios
<vacio>
  #4 (permalink)  
Antiguo 01/04/2014, 12:05
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: procedimientos anidados con mas de 32 niveles

¿Por qué no usas datos jerárquicos?
__________________
MCTS Isaias Islas
  #5 (permalink)  
Antiguo 01/04/2014, 13:06
 
Fecha de Ingreso: febrero-2014
Mensajes: 6
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: procedimientos anidados con mas de 32 niveles

Muchas gracias por responder!!!
mmmm.....
estuve revisando lo de datos jerarquicos....
esa variante consistiria en transformar mi modelo de BD(al menos estas 4 tablas) en un modelo de datos jerarquico primero para despues pòder extraer los datos????????
  #6 (permalink)  
Antiguo 01/04/2014, 13:55
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: procedimientos anidados con mas de 32 niveles

Me parece que se están refiriendo a consultas recursivas, y no a bases de datos jerárquicas...
En todo caso no requiere bases jerarquicas, sino un modelado jerarquico. No es lo mismo.

En esencia, es el famos caso de una sola tabla para mostrar todo el arbol de organización de una empresa...

http://technet.microsoft.com/es-es/l.../bb677173.aspx
http://technet.microsoft.com/es-es/l...ql.105%29.aspx
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 01/04/2014, 15:27
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 4 meses
Puntos: 180
Respuesta: procedimientos anidados con mas de 32 niveles

Gnzsoloyo, es 100% correcto el planteamiento.

O bien, poder almacenar TODA la cadena animal (vertebrados, invertebrados, mamíferos, carnívoros, etc.)
__________________
MCTS Isaias Islas

Etiquetas: anidados, niveles, procedimientos, server, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:13.