Accès base données: je bloque

youssri40 Messages postés 5 Date d'inscription mercredi 17 février 2010 Statut Membre Dernière intervention 14 mars 2010 - 4 mars 2010 à 09:39
youssri40 Messages postés 5 Date d'inscription mercredi 17 février 2010 Statut Membre Dernière intervention 14 mars 2010 - 14 mars 2010 à 00:26
Voici Mon code:
IDbConnection con = new OracleConnection();
String ConnectionString = "Data Source=localhost:1521/XE;User Id=mbg;Password=mbg;";
con.ConnectionString = ConnectionString;
con.Open();
MessageBox.Show("connecté");
//jusqu'à ici ça marche
IDbCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "INSERT INTO DEVIS ( REF,NOM) VALUES ( 122,@NAME) ";
IDbDataParameter ParamName = cmd.CreateParameter();
ParamName.ParameterName = "@NAME";
ParamName.DbType = DbType.String;
ParamName.Direction = ParameterDirection.Input;
ParamName.Value = "KAKA";
cmd.Parameters.Add(ParamName);
cmd.ExecuteNonQuery();
con.Close();

Lors du débogage le programme s'arrête à "cmd.ExecuteNonQuery()" et m'affiche le message: ORA-01036 numéro/nom de variable interdit.

SVP aider MOI

2 réponses

cs_Robert33 Messages postés 834 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 14 janvier 2017 33
13 mars 2010 à 22:36
Bonsoir,

je ne suis pas un spécialiste d'Oracle, mais les parametres doivent être préfixés par ':' et non pas '@' comme dans SQL Server.

pour info{ici}
C# is amazing, enjoy it!
0
youssri40 Messages postés 5 Date d'inscription mercredi 17 février 2010 Statut Membre Dernière intervention 14 mars 2010
14 mars 2010 à 00:26
Merci pour l'info mais j'ai trouvé et voici la solution.

DbConnection connexion2 = new OleDbConnection();
String ConnectionString = "Provider=OraOLEDB.Oracle;Data Source=localhost:1521/XE;User Id=mbg;Password=mbg;";
connexion2.ConnectionString = ConnectionString;
connexion2.Open();
string mySelectQuery = @"INSERT INTO DEVIS (REF,NOM) VALUES (:REF,:Titre)";

DbCommand Command = connexion2.CreateCommand();
Command.CommandType = CommandType.Text;
Command.CommandText = mySelectQuery;


DbParameter paramREF = Command.CreateParameter();

paramREF.ParameterName = "@REF";
paramREF.Direction = ParameterDirection.Input;
paramREF.Value = 87;
Command.Parameters.Add(paramREF);


DbParameter param = Command.CreateParameter();
param.ParameterName = "@Titre";
param.Direction = ParameterDirection.Input;
param.Value=toolStripLabel1.Text;
Command.Parameters.Add(param);




Command.ExecuteNonQuery();
Command.Parameters.Clear();
connexion2.Close();
0
Rejoignez-nous