AUTO_INCREMENT variable
Résolu/Fermé
Stef60
Messages postés
251
Date d'inscription
jeudi 31 mai 2007
Statut
Membre
Dernière intervention
22 avril 2009
-
18 févr. 2008 à 15:05
Stef60 Messages postés 251 Date d'inscription jeudi 31 mai 2007 Statut Membre Dernière intervention 22 avril 2009 - 8 avril 2008 à 13:49
Stef60 Messages postés 251 Date d'inscription jeudi 31 mai 2007 Statut Membre Dernière intervention 22 avril 2009 - 8 avril 2008 à 13:49
Bonjour,
Pourquoi ne peut-on pas faire :
ALTER TABLE ma_table AUTO_INCREMENT = @ma_variable ;
Comment faire pour faire commencer une table auto_indexer à une certaine valeur ?
D'avance merci.
Pourquoi ne peut-on pas faire :
ALTER TABLE ma_table AUTO_INCREMENT = @ma_variable ;
Comment faire pour faire commencer une table auto_indexer à une certaine valeur ?
D'avance merci.
A voir également:
- AUTO_INCREMENT variable
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
- Msgbox vba variable ✓ - Forum VB / VBA
- Vba range avec variable ✓ - Forum VB / VBA
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ✓ - Forum Python
3 réponses
Bonjour,
Déjà AUTO_INCREMENT n'est pas un champ, mais un paramètre pour un champ, tu ne peux donc lui affecter aucune valeur, c'est une opération.
Tu peux choixir dans ta base SQL a partir de quelle valeur tu commence l'incrémentation.
Déjà AUTO_INCREMENT n'est pas un champ, mais un paramètre pour un champ, tu ne peux donc lui affecter aucune valeur, c'est une opération.
Tu peux choixir dans ta base SQL a partir de quelle valeur tu commence l'incrémentation.
Stef60
Messages postés
251
Date d'inscription
jeudi 31 mai 2007
Statut
Membre
Dernière intervention
22 avril 2009
41
18 févr. 2008 à 15:39
18 févr. 2008 à 15:39
J'arrive à affecter une valeur avec ca :
ALTER TABLE ma_table AUTO_INCREMENT = 100 ;
Dans ce cas, l'incrementation commencera à 100.
Donc à la main, cela fonctionne, mais pas avec une variable.
Pourtant ma variable @ma_variable est bien un nombre.
SET @ma_variable = SELECT COUNT(id) FROM ma_table;
SELECT @ma_variable -> me retoune un nombre
En fait, j'ai besoin de ne pas à avoir modifier l'auto_increment à la main car c'est trop long et pas scriptable.
De plus, je recupere le COUNT d'une autre base
ALTER TABLE ma_table AUTO_INCREMENT = 100 ;
Dans ce cas, l'incrementation commencera à 100.
Donc à la main, cela fonctionne, mais pas avec une variable.
Pourtant ma variable @ma_variable est bien un nombre.
SET @ma_variable = SELECT COUNT(id) FROM ma_table;
SELECT @ma_variable -> me retoune un nombre
En fait, j'ai besoin de ne pas à avoir modifier l'auto_increment à la main car c'est trop long et pas scriptable.
De plus, je recupere le COUNT d'une autre base
Stef60
Messages postés
251
Date d'inscription
jeudi 31 mai 2007
Statut
Membre
Dernière intervention
22 avril 2009
41
8 avril 2008 à 13:49
8 avril 2008 à 13:49
J'ai trouvé une solution si ca interesse.
Je passe par une variable
En gros ca donne ca:
SET @index = (SELECT MAX(id) FROM table); // ce chiffre +1 sera mon auto_increment
INSERT INTO table2 (id) SELECT @index;
DELETE FROM table2 WHERE id < (@index + 1); // resultat : une table vide qui commence à l'index @index + 1
Je passe par une variable
En gros ca donne ca:
SET @index = (SELECT MAX(id) FROM table); // ce chiffre +1 sera mon auto_increment
INSERT INTO table2 (id) SELECT @index;
DELETE FROM table2 WHERE id < (@index + 1); // resultat : une table vide qui commence à l'index @index + 1