Nhibernate et oracle

laymouna98 Messages postés 71 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 août 2009 - 27 févr. 2009 à 11:02
laymouna98 Messages postés 71 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 août 2009 - 27 févr. 2009 à 16:36
Salut,
Mon problème c'est lorsque je fait une insertion dans une base de données oracle à partir de mon application il me sort l'erreur suivante :

Oracle.DataAccess.Client.OracleException: ORA-02289: la séquence n'existe pas

mais ce qui est bizarre c'est que l'update, le delete et le chargemment de données marche trés bien

saviez vous qu'est ce que ça veut dire cette erreur
aidez moi svp et merci d'avance

4 réponses

titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
27 févr. 2009 à 14:18
Bonjour,


Les colonnes auto incrémentées dnas Oracle n'existent pas, on utilise des séquences. La séquence n'est autre qu'un compteur qui te donne la prochaine valeur de ta PK à mettre lors d'un insert dans ta table.


Il faut donc créer une séquence pour ta table. Si tu explore ton schéma Oracle avec TOAD ou SQL devellopper par exemple, tu pourra aller dans les séquences pour créer celle qui te manque.


Bon courage

---------------------------------------
R. Seb
MCP C# 2.0 - MCTS ASP.Net 2.0
0
laymouna98 Messages postés 71 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 août 2009 1
27 févr. 2009 à 15:31
merci pour ton aide,
peut être j'ai pas bien compris, mais mon clé primaire il n'est pas auto incrémenté et j'ai pas des colonnes auto incrémentées. alors est ce que je doit créer ces séquences.
0
titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
27 févr. 2009 à 16:19
oui

---------------------------------------
R. Seb
MCP C# 2.0 - MCTS ASP.Net 2.0
0
laymouna98 Messages postés 71 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 août 2009 1
27 févr. 2009 à 16:36
j'ai fait cela
CREATE SEQUENCE employee_seq
 MINVALUE 1
 START WITH 1
 NCREMENT BY 1
 CACHE 20;
mais c'est toujours le même problème
comment savoir que telle séquence est pour tel table
0
Rejoignez-nous