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

PHP & Base de données Discussion :

tester la presence d'un datafile dans la base [SQL-Server]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 146
    Points : 100
    Points
    100
    Par défaut tester la presence d'un datafile dans la base
    Bonjour les experts, je profite de cette belle journee pour vous poser une petite question.

    J'ai cree un gros script en php pour gerer des datafiles et faire des stats dessus, mon probleme est le suivant:

    Quand je fais le test de presence du datafile sous oracle je fais ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $sSql= "select file_name from dba_data_files where file_name='".$aCapaKey["PATH_DTF"]."'";
     
    ce qui me retourne no rows si il n y en a pas.
    Mais quands je passes aux bases MSSQL de mon serveur tout ce passe bien jusqu'a qu'un datafile disparaisse ( c'est justement pour tester l'etat que je fais ce test )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	$sSql= "SELECT FILENAME FROM dbo.sysfiles where FILENAME='".$aCapaKey["PATH_DTF"]."'";
     
    il est pas content !
    il me dis les choses suivantes:
     
                            MssqlDB::SendReport() - Error Listing DTF on database.
                            mssql_select_db(): message: Could not locate entry in sysdatabases for database 'euytuyy'. No entry found with that name. Make sure that the name is entered correctly. (severity 16)
    Bien evidement qu'il l'a pas trouve je l'ai vire pour qu'apres je puisse mettre a jour son etat dans une base qui reference mes datafiles.

    Je voudrais donc savoir comment palier a ce probleme, car je m'y connais tres peu en MSSQL.

    Il me faudrait soit une methode pour gerer l'erreur en disant dans mon code php if (code erreur machin) etc ... soit une autre solution.

    Merci d'avance et bonne journee.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 146
    Points : 100
    Points
    100
    Par défaut
    Probleme resolu.

    En faite le message d'erreur n'etait pas explicite.

    J'ai fait les tests a la main sur ma base etj'ai fini par comprendre qu'en faite mon script fesait la requete suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT FILENAME FROM euytuyy.dbo.sysfiles where FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\euytuyy.mdf'
    Etant donne que la database euytuyy n'existait plus ...

    J'espere que ca aidera des gens nul en MSSQL comme moi

    Bonne apres midi.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Condition pour tester si une valeur existe déjà dans la base
    Par rachou59650 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 10/04/2008, 10h22
  2. tester la presence d'un tuple dans un ensemble
    Par redabadache3 dans le forum SQL
    Réponses: 1
    Dernier message: 30/10/2007, 23h16
  3. Réponses: 2
    Dernier message: 06/06/2007, 16h27
  4. Tester l'existence d'un index dans une base de données
    Par QuickSave dans le forum Bases de données
    Réponses: 4
    Dernier message: 31/01/2007, 13h41
  5. [MySQL] Tester l'existance d'une table dans une base de données
    Par méphistopheles dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 20/12/2006, 19h27

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