Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1503 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  balayage d'une arborescence d'une base de données

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

balayage d'une arborescence d'une base de données

n°1153104
phil444
Posté le 18-07-2005 à 22:24:20  profilanswer
 

Bonjour,
 
Est-ce que vous auriez pas dans vos cartons un algorythme pour balayer un base de données, je cherche à repérer les noeuds.
 
Merci d'avance

mood
Publicité
Posté le 18-07-2005 à 22:24:20  profilanswer
 

n°1153272
cesarr89
Posté le 19-07-2005 à 08:19:18  profilanswer
 

Les noeuds d'une base de données?? C'est quoi pour toi?

n°1153314
Arjuna
Aircraft Ident.: F-MBSD
Posté le 19-07-2005 à 09:38:25  profilanswer
 

Si c'est une relation du type "père-fils" dans une table, alors sous Oracle, il y a la fonction miracle "connect by ... prior ..." qui est parfaite.
Par contre, c'est pas très rapide, et surtout, ça ne marche à ma connaissance que sous Oracle.

n°1153316
Elmoricq
Modérateur
Posté le 19-07-2005 à 09:41:42  profilanswer
 

Je ne connais pas de fonction standard en SQL pur, je pense que chaque base de données à sa façon de faire pour retrouver les liens de parenté.
 
Si bien sûr c'est ce qu'entend phil444 par "noeud d'une base de données".

n°1153339
moi23372
Posté le 19-07-2005 à 09:52:56  profilanswer
 

franchement ça me semble quand même bizzare ce qu'il veut faire...

n°1153341
Elmoricq
Modérateur
Posté le 19-07-2005 à 09:53:44  profilanswer
 

Moi, ça me semble simplement abscons.

n°1153432
phil444
Posté le 19-07-2005 à 11:06:34  profilanswer
 

ce que je veux faire, c'est que je suis sur une base, de SGDT, et je veux la balayer pour changer certains attributs, mais pour ça faut que je déploie toute l'aborescence, donc faire une boucle récursive, certainement en PL/SQL.

n°1153457
Elmoricq
Modérateur
Posté le 19-07-2005 à 11:20:04  profilanswer
 

phil444 a écrit :

ce que je veux faire, c'est que je suis sur une base, de SGDT, et je veux la balayer pour changer certains attributs, mais pour ça faut que je déploie toute l'aborescence, donc faire une boucle récursive, certainement en PL/SQL.


 
Une petite remarque : je crois que pour le récursif en SQL, on n'a droit qu'à un nombre limité d'imbrications.
Combien exactement je ne sais plus, peut-être 16 mais faut que quelqu'un confirme.
 
Sinon pour ton explication, je n'ai toujours pas compris. Qu'appelles-tu une "arborescence", dans une base ? L'ensemble des tables ?
De quels attributs parles-tu ? Index ? Clefs ? Autre ?

n°1153489
Arjuna
Aircraft Ident.: F-MBSD
Posté le 19-07-2005 à 11:37:17  profilanswer
 

Le nombre d'ittération récursives dépend du moteur de script. Pour le T-SQL (SQL Server 2000), c'est 20, chaque niveau de trigger comptant pour 1, c'est important à savoir en cas de mises à jour en cascade.

n°1154402
phil444
Posté le 20-07-2005 à 10:12:26  profilanswer
 

oui c'est l'ensemble des tables avec les liens transverses

mood
Publicité
Posté le 20-07-2005 à 10:12:26  profilanswer
 

n°1154419
phil444
Posté le 20-07-2005 à 10:18:16  profilanswer
 

oui pour les attributs, il s'agit d'attributs de la table, c'est vrai faut être plutot précis dans les termes, le but c'est de changer la valeur d'un attributs dans la table, je te donne un exemple je dois changer le nom d'un service de l'entreprise, je dois pas avoir plus de 10 niveaux et je suis sur une base oracle avec sqlplus

n°1154457
cesarr89
Posté le 20-07-2005 à 10:30:52  profilanswer
 

phil444 a écrit :

oui pour les attributs, il s'agit d'attributs de la table, c'est vrai faut être plutot précis dans les termes, le but c'est de changer la valeur d'un attributs dans la table, je te donne un exemple je dois changer le nom d'un service de l'entreprise, je dois pas avoir plus de 10 niveaux et je suis sur une base oracle avec sqlplus


 
 
 :heink:  
J'ai pas compris ton exemple là.
Tu voudrais pas parler d'intégrité référentielle en fait ?

n°1154631
Arjuna
Aircraft Ident.: F-MBSD
Posté le 20-07-2005 à 12:47:29  profilanswer
 

Donne un exemple complet avec :
-> Structure des tables liée à l'exemple
-> Données d'exemple
-> Ce que tu as
-> Ce que tu veux
-> Le numéro de téléphone de ta soeur si elle est jolie :D


Message édité par Arjuna le 20-07-2005 à 12:47:48

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  balayage d'une arborescence d'une base de données

 

Sujets relatifs
Syntaxe pour traiter 2 bases de données ?Probleme base access avec vb.net
[VBA] [RESOLU] Selection de données par variablescopier le journal des événements de Windows dans une base de donnée Ac
[RESOLU] [vba] récupération de données dans cellulerécupérer des données d'un autre µp
des données dans mon mail incorrecte (depuis un formulaire)pb de donnees non conservée
Stocker des données binaires + ODBCrécupération de données à insérer dans un formulaire
Plus de sujets relatifs à : balayage d'une arborescence d'une base de données


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR