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

SQL Oracle Discussion :

vider une table


Sujet :

SQL Oracle

  1. #1
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut vider une table
    salut mes amis,


    svp, quel est la requet qui me permet de vider une table.

    merci de me repondre.

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 952
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 952
    Par défaut
    truncate si tu n'as pas besoin du rollback sinon delete.

  3. #3
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut
    Citation Envoyé par skuatamad Voir le message
    truncate si tu n'as pas besoin du rollback sinon delete.
    premierment c'est quoi du rollback.

    bon pour delete elle fait la suppression ligne par ligne supposons que j'ai une table jugatesque ...

    pouriez vous me donnez une idée sur truncate

    merci pour la reponse.

  4. #4
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    TRUNCATE est instantané mais il fait un commit, alors si tu as des mises à jour avant, fait attention. Par ailleurs, c'est irréversible puisque du coup le rollback n'a aucun effet.

    Voila un petit descriptif pour comprendre le rollback : http://sheikyerbouti.developpez.com/...=Chap1#L1.2.19

  5. #5
    Membre éprouvé

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2008
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 109
    Par défaut
    salut

    La commande TRUNCATE supprime rapidement toutes les lignes d'un ensemble de tables
    TRUNCATE ne peut pas être utilisé sur une table référencée par d'autres tables au travers de clés étrangères, sauf si ces tables sont aussi comprises dans la commande
    Rollback
    une méthode permettant , d'annuler l'ensemble des requêtes que l'on vient de réaliser (certaines requetes).

    la répétition est pédagogique

  6. #6
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut
    Citation Envoyé par umarus Voir le message
    salut

    La commande TRUNCATE supprime rapidement toutes les lignes d'un ensemble de tables
    TRUNCATE ne peut pas être utilisé sur une table référencée par d'autres tables au travers de clés étrangères, sauf si ces tables sont aussi comprises dans la commande
    Rollback
    une méthode permettant , d'annuler l'ensemble des requêtes que l'on vient de réaliser (certaines requetes).

    la répétition est pédagogique
    Ah! Merci umarus,

    mais j'ai une question concernant truncate,

    par exemple avec mysql si on vide notre qu'elle contient un index séquenciel ou incrémentale, le serveur va garder en memoire la dernier index qu'elle a été supprimé, alors si on ajoute une nouvelle entré, l'index va etre mise a le dernier index qui a été supprimé +1.
    c-a-d il ne va pas prendre lindex 1 tandis que notre table est vide.

    est ce que c'est le meme chose avec truncate .
    merci

  7. #7
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Plus exactement, DELETE supprime les lignes alors que TRUNCATE ne fait que baisser la HWM. TRUNCATE est une commande DDL (manipulation de la structure) et non DML (manipulation des données).

  8. #8
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut
    TRUNCATE est instantané mais il fait un commit,
    Merci orafrance.

    mais je n'est pas compris que veut dire tu par commit et instantané.

    merci

  9. #9
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut
    Bon c'est clair merci pour vous touss.

  10. #10
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Attention aussi, les triggers ne sont pas exécutés lors d'un truncate.

  11. #11
    Membre confirmé Avatar de hb2ee
    Inscrit en
    Mars 2009
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 157
    Par défaut
    Citation Envoyé par McM Voir le message
    Attention aussi, les triggers ne sont pas exécutés lors d'un truncate.
    vous voulez dire que meme les trigger sont supprime aussi lors d'une lancement d'une requet truncat.

  12. #12
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Non, mais si vous avez un trigger qui se déclanche sur un ON DELETE, il ne se déclanchera pas avec un truncate.

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

Discussions similaires

  1. [SQL] Vider une table
    Par philippef dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 22/03/2013, 19h20
  2. [MySQL] Vider une table à la fermeture du navigateur
    Par cheucher dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 07/03/2006, 12h20
  3. Vider une table MySQL suite à javascript:confirm()
    Par anutka dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 16/09/2005, 12h16
  4. comment vider une table de tous ses enregistrements ?
    Par bertrand_declerck dans le forum Bases de données
    Réponses: 3
    Dernier message: 29/07/2005, 10h19
  5. Vider une table a une fermeture subite
    Par mimosa7 dans le forum Access
    Réponses: 6
    Dernier message: 15/06/2005, 17h13

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