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

Administration SQL Server Discussion :

drop table AVEC les fichiers mdf et ldf


Sujet :

Administration SQL Server

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Delphi
    Inscrit en
    Janvier 2019
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 182
    Points : 42
    Points
    42
    Par défaut drop table AVEC les fichiers mdf et ldf
    Bonjour à tous.tes
    C'est core mouai

    Mon problème est que, quand je drop une database via mon appli avec un ordre sql 'DROP DATABASE ...', les fichiers mdf et ldf ne sont pas supprimés. Du coup, quand j'essaie de re-créer la database, il gueule en disant que ces fichiers existent déjà.
    Très bizarrement, je n'ai rien trouvé de concluant sur le net, même pas sur la doc SQLServer.

    Je fais mal un truc ou quoi ?
    Pas changer assiettes pour fromage.

  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 761
    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 761
    Points : 52 547
    Points
    52 547
    Billets dans le blog
    5
    Par défaut
    Pour supprimer une base il faut qu'il n'y ait absolument aucune connexion dedans. Un simple ordre DROP DATABASE ne réussira que si aucun utilisateur, y compris l'utilisateur que vous êtes n'est en accès à cette base.

    Pour s'en assurer il faut donc couper tous les accès à cette base, puis la supprimer, comme par exemple avec le script suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    USE MaBase;
    ALTER MaBase SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
    USE master;
    DROP MaBase;
    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
    Invité
    Invité(e)
    Par défaut
    Une légère correction, maitre :

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur Delphi
    Inscrit en
    Janvier 2019
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 182
    Points : 42
    Points
    42
    Par défaut
    Merci encore à vous.

    En fait, voilà ce que j'avais fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER MaBase SET OFFLINE WITH ROLLBACK IMMEDIATE;
    DROP DATABASE MaBase;
    Du coup, je me suis dit que le ROLLBACK IMMEDIATE n'était peut-être pas "performant" (faut bien avancer... )
    Et j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER MaBase SET OFFLINE
    puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ALTER MaBase SET ONLINE
    DROP DATABASE MaBase;

    Et là, ça marche.
    Peut_être que j'aurai dû faire le USE master, avant le DROP pour libérer la connexion ?
    Pas changer assiettes pour fromage.

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 761
    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 761
    Points : 52 547
    Points
    52 547
    Billets dans le blog
    5
    Par défaut
    Une fois mise OFFLINE, votre base ne répond plus aux requêtes, y compris DROP DATABASE. La mise OFFLINE d'une base, coupe l'accès à la base en préservant les fichiers…


    Seul le DROP DATABASE supprime effectivement la base, s'il n'y a plus de connexion dans cette base.

    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/ * * * * *

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

Discussions similaires

  1. Extraire les fichiers mdf et ldf d'un backup
    Par hanadakia dans le forum Administration
    Réponses: 9
    Dernier message: 19/12/2017, 12h58
  2. Copier les fichiers mdf et ldf
    Par locus dans le forum Développement
    Réponses: 8
    Dernier message: 26/01/2012, 17h15
  3. Espace à allouer pour les fichiers mdf et ldf
    Par LEGRANVI dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/12/2010, 16h48
  4. générer les fichiers .mdf et .ldf
    Par soft_angel dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 22/09/2008, 19h01
  5. pb fichiers mdf et ldf avec sql 2005
    Par SandraG dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 10/01/2008, 14h29

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