bonjour je realise une application avec J2EE qui interroge une base de données Microsoft SQL server,
mon probleme est lorsque je veux ajouter un enregistrement dans la table ca me genere l'erreur suivante
donc pour résoudre le problème il faut définir IDENTITY_INSERT à ON
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 12:16:11,828 WARN JDBCExceptionReporter:77 - SQL Error: 544, SQLState: 23000 12:16:11,828 ERROR JDBCExceptionReporter:78 - Impossible d'insérer une valeur explicite dans la colonne identité de la table 'DEPOSITAIRE' quand IDENTITY_INSERT est défini à OFF.
pour ce il existe 2 methodes :
- enlever l'auto increment de la table une fois pour toute
- mettre SET Indentity_Insert nom_table ON avant la requete d'ajout
j'ai deux questions :
-quel l'avantage ( ou l'inconvénient) de définir Identity_insert à OFF ??
- comment puis-je mettre SET "Indentity_Insert nom_table ON" alors que moi j'utilise pas de code SQL puisque je travaille avec le framework hibernate ( c hibernate qui se charge d'incrémenter la clé primaire)
voila un exemple de mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Depositaire depositaire = new Depositaire(); depositaire.setCode("D2FA"); depositaire.setLibelle("BC"); depositaire.setNom("Banque Central"); dep.saveDepositaire(depositaire);
Partager