2009-07-29 5 views
0

Je dois interroger la structure du dossier. En d'autres termes, je dois pouvoir accéder à la structure du répertoire par SQL. Je pense à cela il devrait y avoir un fournisseur OLE DB ou un pilote ODBC à cette fin. Mon ami a dit de google "dossier de surveillance" mais je ne trouve rien Maintenant, je fais dans l'invite de commande dir> somefile et l'importation de fichier texte résultant à la DB, mais c'est un peu "pas en temps réel". Je dois y accéder en temps réel comme le fait l'explorateur. Y a-t-il un moyen? Mercicomment interroger une structure de dossiers (fichiers, répertoires)

Répondre

0

Pourquoi avez-vous spécifiquement besoin de SQL pour interroger des fichiers et des dossiers? Quel genre de requête essayez-vous de faire, et quelles sont vos exigences de performance pour cela (d'une part, vous devez réaliser que la performance de la requête dans le manque d'index ne dépendra pas du langage de requête).

+0

Merci pour votre réponse, Je n'ai pas besoin de SQL pour cela. J'ai un dossier dans le réseau où beaucoup de gens jettent beaucoup de dossiers principalement des images. J'ai besoin d'avoir ce dossier comme base de données pour interroger et connaître les fichiers actuellement disponibles. Ne vous attendez pas à de grandes performances car le dossier est vraiment grand et même le système d'exploitation l'ouvre pendant quelques minutes –

+0

Pour clarifier: avez-vous un seul dossier, ou un arbre de dossiers (vous avez donc besoin d'analyser tous les sous-dossiers); De quels attributs de fichier avez-vous besoin pour interroger - nom de fichier/taille/date ou certaines métadonnées intégrées dans les fichiers eux-mêmes (par exemple, les balises MP3)? –

+0

c'est un dossier (mais je ne voudrais pas avoir cette restriction), pour l'instant j'ai besoin d'interroger seulement les noms de fichiers, mais j'aimerais pouvoir interroger les métadonnées aussi comme les champs EXIFF des images. –

1

Je suppose que vous allez stocker des informations sur la structure du dossier dans votre base de données comme une hiérarchie:

  • ID
  • ParentID
  • ObjectName

Par exemple, pour stocker ce fichierA et le fichierB sont sous DirectoryD, vous auriez trois enregistrements: - 1, 1, racine - 2, 1, DirectoryD - 3, 2, fileA - 4, 2, fileB

Si tel est le cas, je vous recommande la lecture sur les modèles db hiérarchiques:

+0

Ok, merci, mais comment accéder aux fichiers réels sur votre ordinateur –

0

Vous pouvez essayer importing a .NET assembly into your database qui contient le logique pour interroger le système de fichiers, l'exposer comme une fonction définie par l'utilisateur, puis appeler cette fonction chaque fois que vous voulez obtenir les valeurs de ce répertoire en temps réel. Accordé, j'ai seulement vu ceci fait avec des résultats scalaires des fonctions de .Net, mais il devrait être possible de renvoyer aussi des valeurs de table.

Un exemple simple d'accès au système de fichiers en C# peut être trouvé here, mais si C# n'est pas votre saveur, ou si vous n'avez pas du tout trempé dans le code, cela ne sera d'aucune aide.

Questions connexes