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 :

Tester l'existence d'un fichier sur lecteur réseau


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de GavrocheNET
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2016
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2016
    Messages : 54
    Par défaut Tester l'existence d'un fichier sur lecteur réseau
    Bonjour,

    Petite question aujourd'hui, comment tester l'existence d'un fichier en SQL ?

    J'ai trouvé deux trois indications sur le net, mais rien de concluant, j'arrive juste à tester l'existence sur le C:\ mais pas sur d'autres emplacements (réseaux notamment) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    USE [*****]
    GO
    /****** Object:  UserDefinedFunction [dbo].[fc_FichierExist]    Script Date: 06/11/2018 09:16:38 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER FUNCTION [dbo].[fc_FichierExist](@path varchar(250))
    RETURNS BIT
    AS
    BEGIN
         DECLARE @result INT
         EXEC master.dbo.xp_fileexist @path, @result OUTPUT
         RETURN cast(@result as bit)
    END;
    Alors de ce que j'ai compris c'est pas spécialement la bonne méthode donc je viens vous soumettre ce problème et voir si quelqu'un aurait une méthode éfficace de le faire en SQL, c'est pour créer un trigger de vérification,

    J'ai également vu parler de script SSIS mais j'avoue être un peu largué sur le sujet...

    Merci pour votre aide

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Vous ne pouvez pas utiliser une fonction pour autre chose que de la lecture d'informations venant de tables

    Pour tester l'existence d'un fichier vous devez utiliser une procédure stockée, par exemple comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE PROCEDURE [dbo].[p_FichierExist] @path varchar(250)
    AS
    DECLARE @T TABLE (exist BIT, is_rep bit, parent bit)
    INSERT INTO @T
    EXEC xp_fileexist @path
    SELECT @path AS FICHIE, exist AS EXISTE FROM @T;
    GO
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EXEC [dbo].[p_FichierExist] 'c:\windows\winhlp32.exe'
    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre confirmé Avatar de GavrocheNET
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2016
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2016
    Messages : 54
    Par défaut
    J'ai mis en place et ça à l'air de mieux fonctionner, cependant, j'ai l'impression qu'il n'est pas possible de tester l'existence de fichier sur les lecteurs réseaux je me trompe ? De plus sur certains fichiers dans les dossiers utilisateurs en local, il n'arrive pas à les trouver non plus...

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par GavrocheNET Voir le message
    J'ai mis en place et ça à l'air de mieux fonctionner, cependant, j'ai l'impression qu'il n'est pas possible de tester l'existence de fichier sur les lecteurs réseaux je me trompe ?
    Oui ! Vous vous trompez.... Il peut le faire, s'il à les droits systèmes sur ces lecteurs partagés ce qui suppose que le compte de service de SQL Server soit publié dans l'AD...

    Citation Envoyé par GavrocheNET Voir le message
    De plus sur certains fichiers dans les dossiers utilisateurs en local, il n'arrive pas à les trouver non plus...
    Normal. Toi tu te logue avec ton compte et tu as ton environnement, et SQL Server se logue avec son compte de service et il a son environnement qui est différents du tiens !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Membre confirmé Avatar de GavrocheNET
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2016
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2016
    Messages : 54
    Par défaut
    Très bien merci

    Cependant je ne comprends pas car je me loc avec le compte administrateur sur le serveur ou la BDD est installé et pourtant je n'arrive déjà pas à contrôler tous les fichiers présents sur le C:/...

    Pourtant en tant qu'admin via l'identification windows ça devrait être bon non ?

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Que vous soyez admin ou non, ne change rien au fait que le service sql server navigue dans l'OS avec un compte de service différent du vôtre !

    Un SGBDR n'est pas un exécutable de type tableur Excel qui dépend de votre compte d'utilisateur; dans la sens ou comme il doit pouvoir obéir à de multiples utilisateur il possède sa propre sécurité différente de la vôtre.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. [Débuter] Tester l'existence d'un fichier sur un réseau local
    Par Persons dans le forum Réseau
    Réponses: 7
    Dernier message: 27/10/2016, 09h15
  2. Réponses: 3
    Dernier message: 31/07/2011, 05h15
  3. Tester l'existence d'un fichier sur ftp
    Par LuckyLuke56 dans le forum Composants VCL
    Réponses: 7
    Dernier message: 04/05/2009, 17h58
  4. Vérification existance fichier sur lecteur réseau
    Par sat478 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/07/2007, 11h52
  5. Réponses: 17
    Dernier message: 18/08/2006, 13h13

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