IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

[T-SQL]Déplacement/copie/lecture de fichier dans un trigger?


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 45
    Par défaut [T-SQL]Déplacement/copie/lecture de fichier dans un trigger?
    Bonjour,

    Je voudrais savoir s'il est possible de déplacer, copier, supprimer des fichiers sur le disque (OS windows), dans un trigger (déclencheur) SQL Serveur?

    Voir mieux de lire au préalable un fichier ini afin de déterminer les répertoires Source et Destination lors de ces déplacements de fichiers

    Merci de votre aide

    Olivier

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut
    Oui, via xp_cmdshell dans le trigger
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  3. #3
    Membre Expert
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Par défaut
    Bonjour,

    Pour t'assurer de performances un tant soit peu correctes, il vaut mieux que tu prévoies une méthode asynchrone. Il est plus facile par exemple de lancer un job avec sp_start_job qui va lui faire les copies que tu veux, ou qui va lancer un package DTS / SSIS qui lui peut lire facilement dans un fichier ini.
    Au lieu du ficiher ini, pourquoi ne pas stocker tes chemins dans une table de paramètres ?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 45
    Par défaut
    merci pour ces réponses.

    Effectivement j'ai positionné les parametrages dans une table de la base plutot qu'un fichier ini, c'est bien plus logique


    Sinon j'utilise:

    declare @shell as varchar(255);
    set @shell = 'copy c:\in\toto.txt e:\out\titi.txt';
    exec master..xp_cmdshell @shell, no_output;

    tout marche impéc'

    merci

Discussions similaires

  1. copie d'un fichier dans une fenêtre
    Par sunvi dans le forum Débuter
    Réponses: 7
    Dernier message: 26/08/2009, 13h43
  2. [VBA-Excel] Copie d'un fichier dans un répertoire
    Par marsupilami34 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 23/10/2006, 14h46
  3. [MySQL] Lecture de fichiers dans un site
    Par rane dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 16/10/2006, 17h41
  4. Réponses: 2
    Dernier message: 28/09/2006, 10h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo