Bonjour,

J'essaye d'executer uen requete qui prends 2 parametres. Ces parametres sont des strings pour C# mais des varchar pour Oracle ...
Il y a t-il un cast a faire pour pouvoir faire la comparaison ???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
...
                       // Requête SQL a exécuter
			string sQuery = "SELECT count(*) FROM person WHERE name_person=:name AND password=:passwd";
 
			// Instanciation de l'objet OracleCommand et de ses propriétés
			controller.Application.DbConnection.Open();
			OracleCommand cmd = new OracleCommand(sQuery);
			cmd.Connection = controller.Application.DbConnection.GetConnection;
			cmd.CommandType = CommandType.Text;
 
			OracleParameter name = new OracleParameter("name", OracleType.VarChar,25,"NAME_PERSON");
			name.Value = n;
 
			OracleParameter passwd = new OracleParameter("passwd", OracleType.VarChar,25,"PASSWORD");
			passwd.Value = p;
 
			// On ajoute cette liste de paramètre à l'objet OracleCommand cmd
			cmd.Parameters.Add(name);
			cmd.Parameters.Add(passwd);
 
			// On exécute la requête
			OracleDataReader reader = cmd.ExecuteReader();
 
 
			// Libération des ressources
			if (reader.Read())	{
				MessageBox.Show("Nombre : " + reader.GetInt32(0) + cmd.CommandText);
...

p et n sont des strings passés en parametres d'une fonction ...


Il me trouve aucun enregistrement alors que si je compare des int, il en trouve !!!

Merci de votre aide