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 :

[SQL 2008] comment modifier le contenu d'une table directement comme dans 2000 ?


Sujet :

MS SQL Server

  1. #1
    Membre régulier
    Inscrit en
    Avril 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 105
    Points : 71
    Points
    71
    Par défaut [SQL 2008] comment modifier le contenu d'une table directement comme dans 2000 ?
    Bonjour,

    Je viens de migrer de SQL SERVER 2000 vers SQL SERVER 2008 R2.
    Le nouvel environnement est bien différent à tel point que je n'arrive pas à faire une requête sur une table pour en modifier le contenu...
    Savez vous comment faire ?

    Il y a bien l'option "modifier les 200 lignes du haut"... mais dans ces 200 lignes y a pas forcément la ligne voulue... Donc je sais pas comment faire et si je dois utiliser un autre outil ??

    Merci
    Le temps c'est de l'argent !!!
    Pas d'anomalies, ni de girafes au Kenya !!! ;-)

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 240
    Points : 210
    Points
    210
    Par défaut
    Uniquement par l'instruction SQL d'update.

    A mon avis, ce système a été mis en place pour protéger le DBA. En effet, en SQL 2000, lorsque tu lisais une table de cette manière, tout le contenu de la table était lu. Sur des petites tables, çà va, mais sur des tables volumineuse...

    A+

  3. #3
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 193
    Points : 28 077
    Points
    28 077
    Par défaut
    La limite des 200 (1000 pour un SELECT) est propre à Management Studio et est modifiable dans les options

    Menu Outils/Option, dérouler la branche "Explorateur d'objet SQL Server", rubrique Commandes, tu peux modifier cette limite, et si tu met 0, ça enlève la limite (toute la table sera retournée/modifiable)
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  4. #4
    Membre régulier
    Inscrit en
    Avril 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 105
    Points : 71
    Points
    71
    Par défaut
    Ah mince...
    Et pour les requêtes, y a t il uniquement par script ? ou y a t il possibilité d'avoir une interface graphique ?

    Merci
    Le temps c'est de l'argent !!!
    Pas d'anomalies, ni de girafes au Kenya !!! ;-)

  5. #5
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Personnellement je trouve cette option dangereuse. On ne devrait pas pouvoir modifier une ligne de données d'une table de cette façon car le DBA ne contrôle pas la manière dont l'opération est réalisée.

    ++

  6. #6
    Membre régulier
    Inscrit en
    Avril 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 105
    Points : 71
    Points
    71
    Par défaut
    Citation Envoyé par sevyc64 Voir le message
    La limite des 200 (1000 pour un SELECT) est propre à Management Studio et est modifiable dans les options

    Menu Outils/Option, dérouler la branche "Explorateur d'objet SQL Server", rubrique Commandes, tu peux modifier cette limite, et si tu met 0, ça enlève la limite (toute la table sera retournée/modifiable)
    C'est bon à savoir merci.

    Mais ca devient lourd à chercher s'il y a que quelques lignes à modifier... dommage qu'on puisse pas faire une requête pour en modifier le contenu...
    Le temps c'est de l'argent !!!
    Pas d'anomalies, ni de girafes au Kenya !!! ;-)

  7. #7
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 193
    Points : 28 077
    Points
    28 077
    Par défaut
    Tu eux toujours faire une requete bien entendu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE TaTable SET TonChamp=TaValeur WHERE TaCondition
    TaCondition étant la condition de tri servant à isoler le ou les enregistrements à modifier

    Nota : C'est exactement ce que fait Management Studio en tache de fond lorsqu'on modifie un enregistrement dans la grille.


    On ne devrait pas pouvoir modifier une ligne de données d'une table de cette façon car le DBA ne contrôle pas la manière dont l'opération est réalisée.
    Que tu modifie par l'interface de SSMS ou par une requete, normalement, les contraintes doivent s'appliquer de la même manière puisque la modification est de toute façon faite par une requete UPDATE
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  8. #8
    Membre régulier
    Inscrit en
    Avril 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 105
    Points : 71
    Points
    71
    Par défaut
    ok merci pour vos infos.
    Le temps c'est de l'argent !!!
    Pas d'anomalies, ni de girafes au Kenya !!! ;-)

  9. #9
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Citation Envoyé par sevyc64 Voir le message
    Que tu modifie par l'interface de SSMS ou par une requete, normalement, les contraintes doivent s'appliquer de la même manière puisque la modification est de toute façon faite par une requete UPDATE
    Effectivement mais une erreur peut être faite très rapidement via le designer .. Un clic de trop, une modification faite par mégarde ...

    Le faire par requête permet d'éliminer ce genre de problèmes.

    ++

  10. #10
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 193
    Points : 28 077
    Points
    28 077
    Par défaut
    Effectivement mais une erreur peut être faite très rapidement via le designer .. Un clic de trop, une modification faite par mégarde ...

    Le faire par requête permet d'éliminer ce genre de problèmes.
    Tout à fait, mais les mêmes risques existent aussi par requete.
    Un filtre mal écrit, pas testé avant de lancer la modification, une partie de requete qui reste sélectionnée (après un copier-collé par exemple) excluant justement le filtre, et c'est toute une table qui se trouve modifiée au lieu de quelques enregistrements
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  11. #11
    Membre à l'essai
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2009
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    Même si le sujet date un peu, je suis toujours surpris de voir ce genre de discussion sur la sécurité des MàJ dans une DB :

    - que tu puisses modifier seulement les 200 1er enregistrements ou tous, ça change quoi ?!
    La fonctionnalité est bridée par défaut certes mais elle est modifiable et si elle existe c'est qu'elle est utile.

    Et dans un environnement professionnel de toute façon, tu fais d'abord ton script ou ta modif à la main sur ta base de données en local pour tester justement, puis sur ton serveur de pré-production pour vérifier à nouveau que ton script ou ta modif fonctionne, puis sur ton serveur de production.

    Donc sauf à être débile et inconscient ou très tête en l'air, tu fais attention à ce que tu fais avec des précautions d'usages non !??

    Mais faut croire que ces procédures de "précaution" ne sont pas mise en application chez tout le monde.
    Professionnel ?!! Bizare, bizare...

  12. #12
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 240
    Points : 210
    Points
    210
    Par défaut
    Par expérience, si une possibilité d'erreur existe, elle a toute les chances de se produire, surtout l'erreur humaine.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 01/08/2014, 13h18
  2. Réponses: 2
    Dernier message: 16/12/2013, 15h36
  3. Comment modifier le contenu d'une cellule excel avec C#
    Par roujij dans le forum Windows Forms
    Réponses: 3
    Dernier message: 05/08/2009, 14h18
  4. Afficher et modifier le contenue d'une table sql
    Par DeWaRs dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/01/2009, 20h36
  5. Réponses: 4
    Dernier message: 30/09/2008, 09h30

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