Bonjour Hubert,
Merci pour le lien.
Je transmets donc la réponse, largement inspirée par Jean-François Nifenecker :
Avant toute chose, on rappelle que
LA CASSE DE CARACTERE EST SENSITIVE POUR LES NOMS DE TABLES ET NOMS DE CHAMPS !
Champs Autovaleur
Dans Base, appelons le menu Outils > SQL. Dans la fenêtre qui s’ouvre, nous
saisissons une commande SQL comme indiqué ci-dessous.
Ajout d’une fonction Autovaleur à une colonne clef primaire existante
Code : Tout sélectionner
ALTER TABLE "Nom_Table" ALTER COLUMN "Nom_Colonne" INTEGER IDENTITY
Exemple
Si la colonne n’existe pas ou n’est pas clef primaire, nous recevons un message d’erreur.
Modification, remise à zéro d'une clef primaire avec fonction Autovaleur à une table :
Code : Tout sélectionner
ALTER TABLE "Nom_Table" ADD COLUMN "Nom_Colonne" INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 1)
Ajout d'un champ avec clef primaire fonction autovaleur, dans une table :
Code : Tout sélectionner
ALTER TABLE "T_Clients" ADD COLUMN "ID" INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 1)
Nous veillerons à respecter les guillemets.
Notons qu’il est fréquent de nommer ID (« identifiant ») les colonnes clefs primaires non signifiantes.
Ces commandes mettent la table à jour mais cette mise à jour n’est reflétée dans
Base qu’après avoir choisi Affichage > Actualiser les tables.
on suppose que ma table s'appelle "users", et que mon champ de clef primaire avec autonum s'appelle "id"
Voici des syntaxes
TESTEES qui ont fonctionnées pour moi :
Code : Tout sélectionner
CREATE TABLE "users" ( "id" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 100, INCREMENT BY 1)
Alter table "users" alter column "id" INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1, INCREMENT BY 2)
la syntaxe simplifiée permet de lancer la commande [restart] sans possibilité toutefois de modifier l'instruction de pas.
Le pas dernièrement mémorisé sera conservé.