Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème avec la propriété IDENTITY

8 réponses
Avatar
Fredo MT
ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas !

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.

8 réponses

Avatar
Fred BROUARD
IDENTITY(1,1) n'est pas un type de données SQL. Il faut préciser INT ou autres...

A +

Fredo MT a écrit:
ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas !

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.





--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Avatar
Pierre
j'ai essayé et ça ne marche pas non plus ???
pourquoi ne pas drop la colonne et la recréer avec l'option identity ? ça
par contre ça marche.
@+


"Fredo MT" a écrit dans le message de news:
436f37dd$0$20240$
ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas
!

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.



Avatar
Fredo MT
Le but n'est pas de dropper la colonne, car la table n'est pas vide, le but
est de pouvoir alterner l'incrément auto, et l'incrément manuel. Mise à part
le fait de dropper la colonne je ne vois pas d'autre solution.

Merci d'avance pour vos retours

"Fredo MT" a écrit dans le message de news:
436f37dd$0$20240$
ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas
!

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.



Avatar
Fred
ALTER TABLE MaTable ALTER COLUMN MaColonne INT IDENTITY(1,1) ne fonctionne
pas non plus. :-s


"Fredo MT" a écrit dans le message de news:
436f37dd$0$20240$
ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas
!

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.



Avatar
Med Bouchenafa
Il vaut mieux le faire par Entreprise Manager qui se débrouille pour recréer
la table
http://www.windowsitpro.com/Articles/Index.cfm?ArticleID"081&DisplayTab=Article

--
Bien cordialement
Med Bouchenafa

"Fredo MT" wrote in message
news:436f37dd$0$20240$
ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas


!

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.




Avatar
Fred
Cette solution fonctionne pour ceux que ça intéresse :

SET IDENTITY_INSERT MaTable ON
Ensuite je fais mes INSERT avec mes propres codes et identifiants, lorsque
j'ai fini le traitement ->
SET IDENTITY_INSERT MaTable OFF -> et l'incrément par la suite est
automatique

"Fredo MT" a écrit dans le message de news:
436f37dd$0$20240$
ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas
!

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.



Avatar
Fred BROUARD
alors ce n'est pas du tout comme cela qu'il faut faire !!!

démo :

CREATE TABLE T_TEST
(COMPTEUR INTEGER IDENTITY(238, 1),
VALEUR VARCHAR(16))

-- insertion avec utilisation du compteur d'auto incrément :
INSERT INTO T_TEST VALUES ('Paul')
SELECT * FROM T_TEST

COMPTEUR VALEUR
----------- ----------------
238 Paul

-- insertion avec forçage d'une valeur dans la colonne auto incrémentée :
SET IDENTITY_INSERT T_TEST ON
INSERT INTO T_TEST (COMPTEUR, VALEUR) VALUES (123, 'Jean')
INSERT INTO T_TEST (COMPTEUR, VALEUR) VALUES (456, 'Luc')
SET IDENTITY_INSERT T_TEST OFF

SELECT * FROM T_TEST

COMPTEUR VALEUR
----------- ----------------
238 Paul
123 Jean
456 Luc

-- nouvelle insertion avec utilisation du compteur d'auto incrément :
INSERT INTO T_TEST VALUES ('Marc')

SELECT * FROM T_TEST

COMPTEUR VALEUR
----------- ----------------
238 Paul
123 Jean
456 Luc
457 Marc

Lit l'article que j'ai écrit sur l'auto incrémentation des clefs :
http://sqlpro.developpez.com/cours/clefs/

A +

--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************


Fredo MT a écrit:
Le but n'est pas de dropper la colonne, car la table n'est pas vide, le but
est de pouvoir alterner l'incrément auto, et l'incrément manuel. Mise à part
le fait de dropper la colonne je ne vois pas d'autre solution.

Merci d'avance pour vos retours

"Fredo MT" a écrit dans le message de news:
436f37dd$0$20240$

ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne pas
!

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.








Avatar
Fred
Merci beaucoup Fred pour tes lumières.

"Fred BROUARD" a écrit dans le message de news:

alors ce n'est pas du tout comme cela qu'il faut faire !!!

démo :

CREATE TABLE T_TEST
(COMPTEUR INTEGER IDENTITY(238, 1),
VALEUR VARCHAR(16))

-- insertion avec utilisation du compteur d'auto incrément :
INSERT INTO T_TEST VALUES ('Paul')
SELECT * FROM T_TEST

COMPTEUR VALEUR
----------- ----------------
238 Paul

-- insertion avec forçage d'une valeur dans la colonne auto incrémentée :
SET IDENTITY_INSERT T_TEST ON
INSERT INTO T_TEST (COMPTEUR, VALEUR) VALUES (123, 'Jean')
INSERT INTO T_TEST (COMPTEUR, VALEUR) VALUES (456, 'Luc')
SET IDENTITY_INSERT T_TEST OFF

SELECT * FROM T_TEST

COMPTEUR VALEUR
----------- ----------------
238 Paul
123 Jean
456 Luc

-- nouvelle insertion avec utilisation du compteur d'auto incrément :
INSERT INTO T_TEST VALUES ('Marc')

SELECT * FROM T_TEST

COMPTEUR VALEUR
----------- ----------------
238 Paul
123 Jean
456 Luc
457 Marc

Lit l'article que j'ai écrit sur l'auto incrémentation des clefs :
http://sqlpro.developpez.com/cours/clefs/

A +

--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************


Fredo MT a écrit:
Le but n'est pas de dropper la colonne, car la table n'est pas vide, le
but est de pouvoir alterner l'incrément auto, et l'incrément manuel. Mise
à part le fait de dropper la colonne je ne vois pas d'autre solution.

Merci d'avance pour vos retours

"Fredo MT" a écrit dans le message de
news: 436f37dd$0$20240$

ALTER TABLE MaTable ALTER COLUMN MaColonne IDENTITY(1,1) ne fonctionne
pas !

Quelle est la syntaxe correcte pour mettre le compteur à "oui" sur une
colonne.

Merci pour vois réponses.