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

Insert dans une table avec autoincrement

2 réponses
Avatar
Dji_c
Bonjour,

Mon pb est simple je pense mais j'ai toujours la meme erreur; Je souhaite
faire un insert dans une table_2 à partir d'une table_1 identique jusque la
tout va bien mais a chaque fois j'ai le message sql : "Une valeur explicite
e la colonne identit de la table 'table_2' ne peut tre spcifie que si on
fait appel la liste des colonne et si IDENTITY_INSERT est ON".

Evidement il y a un autoincrement sur le champ "INDICE" et un index aussi.

Voici ma requete :

SET IDENTITY_INSERT dbo.table_2 ON
Declare @ind_max int

Set @ind_max = (SELECT MAX(INDICE) FROM table_2)

Insert into table_2
Select INDICE, [DATE], HEURE, DUREE, ID_TV, TV, GROUPE, DUREE_ATT, DEBORDE,
FERMETURE, PERDU, A_RAPPELER, STATUS, LIB_STATUS, LIB_DETAIL, TEL_1, TEL_2,
NBAPPELS, TRANSFERT, VOCAL, BAL, REROUT, DNIS, NET_IDENT, HISTORIQUE,
DataAss, ComType from OPENDATASOURCE ('SQLOLEDB', 'Data
Source=SERVEURPROD;User ID=*****;Password=*****' ).BASE.dbo.table_1 WHERE
(indice > @ind_max)
SET IDENTITY_INSERT dbo.appels OFF


Une idéé pour que ca marche ?
Merci

.

2 réponses

Avatar
bruno reiter
manque la liste des cols :
INSERT TABLE1
(col1,...)
SELECT ...

br

"Dji_c" a écrit dans le message de news:
44c4bbd2$0$1307$
Bonjour,

Mon pb est simple je pense mais j'ai toujours la meme erreur; Je souhaite
faire un insert dans une table_2 à partir d'une table_1 identique jusque
la tout va bien mais a chaque fois j'ai le message sql : "Une valeur
explicite e la colonne identit de la table 'table_2' ne peut tre spcifie
que si on fait appel la liste des colonne et si IDENTITY_INSERT est ON".

Evidement il y a un autoincrement sur le champ "INDICE" et un index aussi.

Voici ma requete :

SET IDENTITY_INSERT dbo.table_2 ON
Declare @ind_max int

Set @ind_max = (SELECT MAX(INDICE) FROM table_2)

Insert into table_2
Select INDICE, [DATE], HEURE, DUREE, ID_TV, TV, GROUPE, DUREE_ATT,
DEBORDE, FERMETURE, PERDU, A_RAPPELER, STATUS, LIB_STATUS, LIB_DETAIL,
TEL_1, TEL_2, NBAPPELS, TRANSFERT, VOCAL, BAL, REROUT, DNIS, NET_IDENT,
HISTORIQUE, DataAss, ComType from OPENDATASOURCE ('SQLOLEDB', 'Data
Source=SERVEURPROD;User ID=*****;Password=*****' ).BASE.dbo.table_1 WHERE
(indice > @ind_max)
SET IDENTITY_INSERT dbo.appels OFF


Une idéé pour que ca marche ?
Merci

.



Avatar
Dji_c
Merci, cela fonctionne !!!
J'étais pourtant sûre d'avoir essayer Vendredi, j'ai du sentir le week-end
arrivé et je devais pas avoir l'esprit très clair.

Merci encore ++

"bruno reiter" a écrit dans le message de
news:
manque la liste des cols :
INSERT TABLE1
(col1,...)
SELECT ...

br

"Dji_c" a écrit dans le message de news:
44c4bbd2$0$1307$
Bonjour,

Mon pb est simple je pense mais j'ai toujours la meme erreur; Je souhaite
faire un insert dans une table_2 à partir d'une table_1 identique jusque
la tout va bien mais a chaque fois j'ai le message sql : "Une valeur
explicite e la colonne identit de la table 'table_2' ne peut tre spcifie
que si on fait appel la liste des colonne et si IDENTITY_INSERT est ON".

Evidement il y a un autoincrement sur le champ "INDICE" et un index
aussi.

Voici ma requete :

SET IDENTITY_INSERT dbo.table_2 ON
Declare @ind_max int

Set @ind_max = (SELECT MAX(INDICE) FROM table_2)

Insert into table_2
Select INDICE, [DATE], HEURE, DUREE, ID_TV, TV, GROUPE, DUREE_ATT,
DEBORDE, FERMETURE, PERDU, A_RAPPELER, STATUS, LIB_STATUS, LIB_DETAIL,
TEL_1, TEL_2, NBAPPELS, TRANSFERT, VOCAL, BAL, REROUT, DNIS, NET_IDENT,
HISTORIQUE, DataAss, ComType from OPENDATASOURCE ('SQLOLEDB', 'Data
Source=SERVEURPROD;User ID=*****;Password=*****' ).BASE.dbo.table_1 WHERE
(indice > @ind_max)
SET IDENTITY_INSERT dbo.appels OFF


Une idéé pour que ca marche ?
Merci

.