Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2691 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Update avec auto incrémentation

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Update avec auto incrémentation

n°1782446
Pupoul
Je te vois
Posté le 04-09-2008 à 10:48:05  profilanswer
 

Bien le bonjour :)
 
J'aurais aimé votre aide pour la constitution d'une requête de mise à jour, qui me semble tout bête mais mes capacités ne me permettent pas de l'appréhender :
 
Je souhaite disposer d'une table de test, avec pour le premier enregistrement dans un des champs (le champ "Nom" pour ne pas le citer) la valeur "test 1", pour l'enregistrement suivant "test 2" etc.
 
La clause where ne me pose pas de problemes, mais je ne vois pas comment incrémenter dans ma requête update automatiquement...
 
UPDATE table SET ChampNom=?????? WHERE ChampWhere='toto'
 
il y a 1500 modifs à faire, alors en effet je peux passer par un petit programme qui chargera une variable avant la requete update, et ainsi lancer 1500 requête UPDATE mais j'aurais préféré éviter de passer un tel programme, et en plus pour ma culture personnelle c'est mieux, sans parler du fait que une requête me semble moins couteux en temps machine que 1500 :o
 
Sous ORACLE 7. Une idée quelqu'un ?

mood
Publicité
Posté le 04-09-2008 à 10:48:05  profilanswer
 

n°1782496
Lenoiche
Posté le 04-09-2008 à 11:58:38  profilanswer
 

Pupoul a écrit :

Bien le bonjour :)
 
J'aurais aimé votre aide pour la constitution d'une requête de mise à jour, qui me semble tout bête mais mes capacités ne me permettent pas de l'appréhender :
 
Je souhaite disposer d'une table de test, avec pour le premier enregistrement dans un des champs (le champ "Nom" pour ne pas le citer) la valeur "test 1", pour l'enregistrement suivant "test 2" etc.
 
La clause where ne me pose pas de problemes, mais je ne vois pas comment incrémenter dans ma requête update automatiquement...
 
UPDATE table SET ChampNom=?????? WHERE ChampWhere='toto'
 
il y a 1500 modifs à faire, alors en effet je peux passer par un petit programme qui chargera une variable avant la requete update, et ainsi lancer 1500 requête UPDATE mais j'aurais préféré éviter de passer un tel programme, et en plus pour ma culture personnelle c'est mieux, sans parler du fait que une requête me semble moins couteux en temps machine que 1500 :o
 
Sous ORACLE 7. Une idée quelqu'un ?


 
je pense que c'est impossible d'executer 1 requete pour updater 1500 tuples
tu seras obliger de faire 1500 update

n°1782504
skeye
Posté le 04-09-2008 à 12:11:10  profilanswer
 

J'ai pas compris ce que devait modifier exactement l'update...il y a quoi actuellement dans ta table?


---------------
Can't buy what I want because it's free -
n°1782515
Pupoul
Je te vois
Posté le 04-09-2008 à 12:28:49  profilanswer
 

L'update concerne le champ ChampNom, mais la valeur que devra contenir ce champ est variable, c'est le nombre (et la position) d'enregistrements à mettre à jour, en partant de 1.
 
Apparemment, ceci devrait fonctionner mais pas pu tester encore :

Code :
  1. DECLARE @counter int
  2. SET @counter = 0
  3. UPDATE MaTable SET @counter = ChampNom = @counter + 1 WHERE ChampWhere = 'toto'


Derrière ça, une simple requête d'ajout pour y mettre 'Test'

Code :
  1. UPDATE MaTable SET ChampNom = 'Test ' & ChampNom WHERE ChampWhere = 'toto'


 
Et le tour serait joué :)
 
A vérifier évidemment.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Update avec auto incrémentation

 

Sujets relatifs
[Resolu][C#, ASP.net / access] problème requete update[SQL] Oubli auto_increment sur ID
Commentaire de code ? Auto génération ?Execution a l ouverture d'un classeur (pas auto_open)
Update de plusieurs valeurs d'une tableauto clic avec timmmer de 5 secondes
[RESOLU] script d'avertissement auto pour disque plein[Réglé] Boucle d'Update et Zones de texte...
Problème avec un update lié à un onclick[Oracle] Problème trigger auto increment
Plus de sujets relatifs à : Update avec auto incrémentation


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR