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

MS SQL Server Discussion :

[MSSQL server 2000] stored procedure a demarre toute seule


Sujet :

MS SQL Server

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 42
    Points : 23
    Points
    23
    Par défaut [MSSQL server 2000] stored procedure a demarre toute seule
    Bonjour a tous !

    J'aurai voulu votre avis sur les possibles causes pouvant conduire a ce fait :
    Une stored procedure sous SQL Server 2000 a base de "TRUNCATE TABLE" a ete stockee pour une utilisation future. Mais des le stockage, elle s'est executee.

    Je n'ai pas trouve de reference a des procedures stockees demarrant toute seule sur internet. Peut-etre pourriez-vous me donner les differentes causes possibles de ce phenomene, qui dans ce cas a ete plutot catastrophique ?
    La procedure suit ce shema :
    - 1 ligne "TRUNCATE TABLE" + nom de la table
    - GO
    Le tout repete pour chaque table devant etre effacee.

    Le but du script etait de purger la base apres avoir traite tout un lot de commandes. Mais comme il s'est execute des le stockage, la base a ete purgee avant que les commandes soient traitees... je vous laisse imaginer la tete du patron.

    Merci pour votre aide,
    Clement.

  2. #2
    Membre actif Avatar de f_bobo
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Mai 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 202
    Points : 281
    Points
    281
    Par défaut
    Salut,

    Pour créer cette procédure, tu as fait comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    create procedure X as 
    ...
    go
    Avec à la place des ... tous tes truncate table ?
    Car en fait, si tu as mis des GO après chaque instruction, la procédure n'a pris que la première et les autres se sont exécuté lorsque tu as lancé le script de création.
    C'est une raison plosible à ton soucis mais des experts vont peut être me contre-dire....
    Cordialement,

    Florent

    Je penche donc je suis...

  3. #3
    Expert confirmé
    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
    Points : 4 043
    Points
    4 043
    Par défaut
    Bonjour,

    A priori ce que tu as fait, c'est quelque chose comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE PROCEDURE dbo.maproceduredangereuse
    AS
    TRUNCATE TABLE t1
    GO
    TRUNCATE TABLE t2
    GO
    Le GO n'est pas une instruction SQL, mais un séparateur de batch interprété par le client (Query Analyzer) pour séparer les envois au serveur. Donc tout ce que tu as mis après le premier GO s'est exécuté. Regarde ce qui reste du code de ta procédure.
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Oui c'est exactement ca. Ca eclairerait beaucoup !
    (Juste je precise que ce n'est pas moi qui ai ecrit le script :p)

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Oui c'est ca qui a ete fait.
    D'ailleurs la tout premiere table n'a pas ete effacee.
    Voyons d'autres avis pour confirmation, mais ca m'a l'air plus que probable. Merci a toi

    (Juste je precise que ce n'est pas moi qui ai ecrit le script :p)

  6. #6
    Expert confirmé
    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
    Points : 4 043
    Points
    4 043
    Par défaut
    Regarde simplement le code de ta procédure stockée, il va y avoir seulement le premier truncate table.
    Pour l'avenir, gère les droits sur la base avec plus de restrictions.
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Bon apparemment tout le monde est d'accord, en effet le premier truncate a pas ete execute.
    Merci a vous tous

    Rudlib, si les droits de la base avaient ete geres autrement, le probleme n'aurait pas eu lieu d'apres toi ?

  8. #8
    Expert confirmé
    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
    Points : 4 043
    Points
    4 043
    Par défaut
    Si le compte qui crée la procédure a le droit de créer des objets, mais pas celui d'écrire des données, oui.
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Ah oui, effectivement...

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 12/12/2010, 23h04
  2. Probleme de connexion java & mssql server 2000
    Par rades2006 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 22/01/2008, 13h40
  3. Probleme de connexion java & mssql server 2000
    Par rades2006 dans le forum JDBC
    Réponses: 3
    Dernier message: 22/01/2008, 12h31
  4. MSSQL Server 2000: données perdues ?!
    Par alfadev dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 23/04/2007, 14h48
  5. [SQL-Server] Connexion Php vers MSSQL Server 2000
    Par Andry dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 19/07/2006, 13h22

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