IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
logo
Sommaire > Pièces-jointes > SQL
        Est t'il possible de lister les fichiers en doubles dans un champ de type pièces-jointes ?
        Comment supprimer les pièces-jointes en fonction de leur extension en SQL
        Comment supprimer toutes les pièces-jointes d'un enregistrement en SQL
        Comment supprimer une pièce-jointe en SQL
        Comment lister les extensions des fichiers en SQL ?
        Comment lister les noms des fichiers en SQL ?
        Comment compter le nombre de pièces-jointes au total en SQL ?
        Comment compter le nombre de pièces-jointes pour un enregistrement en SQL ?

rechercher
precedent    sommaire    suivant    telecharger


Est t'il possible de lister les fichiers en doubles dans un champ de type pièces-jointes ?
auteur :Christophe Warin
Impossible de se contenter du nom du fichier, deux fichiers peuvent être nommés différemment et contenir les mêmes données.

Pour accéder aux données d'un fichier, il faut lire le champ FileData du champ pièce-jointe. Ce champ est en lecture seule, il ne peut être modifié qu'avec l'assistant pièces-jointes d'Access ou bien en VBA.

Son contenu n'est pas explicite et correspond aux données binaires compressées par Access.

De plus, il est impossible d'effectuer un regroupement ou un test d'égalité dessus. Le seul moyen de tester des doublons est donc d'utiliser VBA.


Comment supprimer les pièces-jointes en fonction de leur extension en SQL
auteur :Christophe Warin
Soit la table tblClient(,Nom,Prenom,Fichiers).

Pour supprimer les fichiers d'une certaine extension, il faut appliquer un filtre sur le champ FileType.
DELETE Fichiers.FileType
FROM tblClient
WHERE tblClient.N°=2 AND Fichiers.FileType="txt";
Ici, nous supprimons tous les fichiers txt du client n°2.

Vous remarquerez que le nom du champ figurant après le DELETE est le même que celui dans le WHERE. Ceci est impératif.

Pour exemple, cette requête :
DELETE Fichiers.FileName
FROM tblClient
WHERE tblClient.N°=2 AND Fichiers.FileType="txt";
ne tient pas compte de l'extension et supprime tous les fichiers du client n°2.

lien : faq Comment supprimer toutes les pièces-jointes d'un certain type ?

Comment supprimer toutes les pièces-jointes d'un enregistrement en SQL
auteur :Christophe Warin
Soit la table tblClient(,Nom,Prenom,Fichiers).

Il suffit d'éxecuter une requête Delete sur le champ Fichiers pour le bon enregistrement.
DELETE Fichiers.FileName
FROM tblClient
WHERE N°=2;
;
Ici, nous supprimons tous les fichiers du client n°2.

lien : faq Comment vider un champ de type pièce-jointe en VBA ?
lien : faq Comment supprimer une pièce-jointe en SQL

Comment supprimer une pièce-jointe en SQL
auteur :Christophe Warin
Soit la table tblClient(,Nom,Prenom,Fichiers).

Deux conditions sont nécessaires à la suppression d'une pièce-jointe :

  • Se positionner sur le bon enregistrement
  • Supprimer le fichier désiré
Ces deux conditions sont réunies dans la clause WHERE de la requête :
DELETE Fichiers.FileName
FROM tblClient
WHERE tblClient.N°=2 AND Fichiers.FileName="Lucy1.txt";
Ici, nous supprimons le fichier Lucy.txt du client n°2.

lien : faq Comment supprimer toutes les pièces-jointes d'un certain type ?
lien : faq Comment vider un champ de type pièce-jointe en VBA ?

Comment lister les extensions des fichiers en SQL ?
auteur :Christophe Warin
Soit la table tblClient(,Nom,Prenom,Fichiers).

Fichiers est un champ de type pièce-jointe.

L'extension d'une pièce-jointe est disponible dans son champ FileType

Par exemple, cette requête retourne la liste des extensions ainsi que le nombre de fichiers pour chacune d'elles.
SELECT Fichiers.FileType, Count(Fichiers.Filename) AS [Nombre de fichiers]
FROM tblClient
GROUP BY Fichiers.FileType
HAVING Count(Fichiers.Filename)<>0;

Comment lister les noms des fichiers en SQL ?
auteur :Christophe Warin
Soit la table tblClient(,Nom,Prenom,Fichiers).

Fichiers est un champ de type pièce-jointe.

Pour lister la liste des fichiers d'un champ de type pièce-jointe, il est nécessaire de lire la valeur du sous-champ FileName

En effet, la requête :
SELECT N°, Fichiers
FROM tblClient
Retourne les résultats avec les pièces-jointes mises en forme à l'aide de l'assistant de gestion de pièces-jointes. Alors que la requête :
SELECT N°, Fichiers.FileName
FROM tblClient
Retourne le nom du fichier comme du simple texte.


Comment compter le nombre de pièces-jointes au total en SQL ?
auteur :Christophe Warin
Soit la table tblClient(,Nom,Prenom,Fichiers).

Fichiers est un champ de type pièce-jointe.

Pour compter un nombre de fichier, il faut utiliser la fonction Count sur un sous-champ de Fichiers.
SELECT N°, Count(Fichiers.Filename) AS [Nombre de fichiers]
FROM tblClient

Comment compter le nombre de pièces-jointes pour un enregistrement en SQL ?
auteur :Christophe Warin
Soit la table tblClient(,Nom,Prenom,Fichiers).

Fichiers est un champ de type pièce-jointe.

Pour compter un nombre de fichier, il faut utiliser la fonction Count sur un sous-champ de Fichiers.

Un regroupement sur la clé primaire permet de compter par enregistrement.
SELECT N°, Count(Fichiers.Filename) AS [Nombre de fichiers]
FROM tblClient
GROUP BY N°;

rechercher
precedent    sommaire    suivant    telecharger

Consultez les autres F.A.Q's


Valid XHTML 1.1!Valid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2006 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.