Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Mots clés Nom d'utilisateur
Messages sans réponse

[SQL] Update du champ id

hektoumayo, le lundi 23 mai 2005 à 20:52:39 
 Signaler ce message aux modérateurs

Bonjour,
Voila mon petit problème :
J'ai un table mysql dont le champ "primaire" "auto_incriment" se nomme "id". Je voudrais après suppression d'un champ de la table modifier le "id" pour que celui ci commence toujours à 1. Donc voici le script que j'ai réaliser :

$req="SELECT id FROM livredor";
$resultat=mysql_query($req) or die('ERREUR SQL :'.$req.'<br />'.mysql_error());

$val=mysql_fetch_array($resultat);
$i=1;
while($val) {
$query="UPDATE livredor SET id=' ".$i." ' ";
mysql_query($query) or die('ERREUR SQL :'.$query.'<br />'.mysql_error());
$i=$i+1;
}

Mais celui-ci ne marche pas. Il ne s'agit pas d'une erreur de syntaxe mai bel et bien d'une erreur de programmation.
Est ce que quelqu'un pourrai s'il vous plait m'indiquer l'erreur? Et surtout s'il existe une solution à ce problème.
Merci d'avance.

1

sam3000, le lundi 23 mai 2005 à 21:40:11

Le "update" en général est utilisé avec "where" pour cibler les enregistrements
UPDATE table SET champ=valeur WHERE condition

dans ton cas, je ne vois pas pourquoi tu veux "forcer" la valeur de "id" si tu l'as au préalable définis à "auto_increment".
c'est tout simplement INUTILE!

il te suffis lors de l'ajout d'un nouveau enregistrement d'utiliser la syntaxe:
INSERT INTO table (champs) VALUES (valeurs)

mais, dans les champs, tu ne met pas le champ "id", il sera mis automatiquement par MySQL!

donc tu ignore completement ce champ sauf lors de la selection d'un enregistrement bien précis dans un SELECT:
" SELECT * FROM table WHERE id='$id' "

sur ce, @+ L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000

2

hektoumayo, le lundi 23 mai 2005 à 22:02:53

Bon je pense que tu n'a pa bien compris ce que je voulais dire.
En fait , je voudrais creer un formulaire ds lequel je preciserez le numéro du message à supprimer. Ce numero correspond à l'id de ma table.
La suppression se passe très bien mais le problème c'est que lors de l'affichage de mon livre d'or a nouveau , le premier message du livre d'or a par exemple le numero 3 ( après avoir supprimé le premier et le deuxieme message) , ce qui est parfaitement débil puisqu'il est le premier !
Est ce que tu vois ce que je veu dire?

Répondre à hektoumayo

4

 SearchLab, le mardi 16 décembre 2008 à 16:08:31
  • +1

Dis moi hektoumayo j'ai le même problème que toi quelle solution as tu trouvé pour corriger ton problême (je sais le post est un peu vieux...)

Répondre à SearchLab

3

sam3000, le lundi 23 mai 2005 à 22:36:14

Donc, la solution de ton probleme c'est lors de la suppression!
tu fait ton DELETE, et puis tu fais la commande:
" UPDATE livredor SET id=(id-1) WHERE id>='$id' "
ça decremente les "faux" numéros juste apres l'effacement L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.

Répondre à sam3000
[SQL] UPDATE d'une table (Résolu) Bonjour, J'ai un petit soucis lorsque je veux updater un champ d'un enregistrement d'un table dans ma base de données. En effet, lorsque j'effectue la requete SQL suivante : UPDATE offre o SET o.charges = '0' WHERE o.no_asp = '1302193' Cette dernière... www.commentcamarche.net/forum/affich-2798936-sql-update-d-une-table
Copier le champ dans une autre table en SQL Bonjour, Je souhaite copier le contenu d'un champ1 SQL d'une table (BIBLIO) dans un champ SQL (le champ est EXE1) d'une autre table (Table EXEMPLAIRE) liée à la première. La manipulation doit être faite pour 200 000 fiches, le champ1 de la première... www.commentcamarche.net/forum/affich-12082778-copier-le-champ-dans-une-autre-table-en-sql
[sql] Update multiple (Résolu) Bonjour les gens, Petite question concernant le "UPDATE" en sql (MS SQL SERVER) J'ai une query qui calcule un total et sur base de ce total (et via un function) détermine une classe. J'aurais aimé savoir si je pouvais faire ces 2 actions dans le même... www.commentcamarche.net/forum/affich-2220398-sql-update-multiple
MySQL - Update avec jointureSi vous avez deux tables possédant une clé commune (dans le cas ci-dessous il s'agit de la clé primaire "id"), il est possible de mettre à jour un champ d'une des deux tables (update_table) grâce aux données de la seconde (reference_table) à l'aide... www.commentcamarche.net/faq/sujet-10426-mysql-update-avec-jointure
Sql Update multipleBonjour, Je souhaites savoir s'il est possible de faire un UPDATE en SQL qui comporterait en fait deux UPDATE. Voici ce que je cherche : UPDATE MATABLE SET MonChamp='PAS_DISPO' WHERE CAST(MonChamp AS Int)>6, SET MonChamp='DISPO' WHERE CAST(MonChamp As... www.commentcamarche.net/forum/affich-6847702-sql-update-multiple
Asp .net textbox sql update (Résolu)Mon problème est le suivant : j'ai une page web qui affiche dans des textboxs les données d'une personne ( d'une table access) lorsque je fais une requete sql (update) sur le mot de passe et le nouveau mot de passe ( ces textbox sont tjs vide) ca... www.commentcamarche.net/forum/affich-1015648-asp-net-textbox-sql-update
[PHP/SQL]updateBonjour, par le biais d'un formulaire je voudrais modifier différentes colonne selon l'id. le code que j'ai fait est le suivant mais il ne marche pas : www.commentcamarche.net/forum/affich-2831982-php-sql-update
SQL - Création de tableLe SQL, comportant un langage de définition de données (LDD), permet de créer des tables. Pour cela, il utilise le couple de mots clés CREATE TABLE. La création de tables Le création de tables se fait à l'aide du couple de mots-clés CREATE... www.commentcamarche.net/contents/sql/sqlcreate.php3
SQL - Mise à jour d'informationsLe SQL permet la modification d'une table par un utilisateur (pour peu qu'il ait les droits suffisants...). La modification d'une table consiste à: ajouter des tuples modifier des tuples existants ou bien supprimer des tuples Insertion de... www.commentcamarche.net/contents/sql/sqlmaj.php3
SQL - Contraintes d'intégritéExpression de contraintes d'intégrité Une contrainte d'intégrité est une clause permettant de contraindre la modification de tables, faite par l'intermédiaire de requêtes d'utilisateurs, afin que les données saisies dans la base soient... www.commentcamarche.net/contents/sql/sqlcontr.php3