Bonjour,

Pour un besoin très particulier, j'ai besoin de deux fonctions :

Une première qui prépare une requête et renvoie true/false si la requête a des enregistrements (ce besoin est obligatoire...)

Une deuxième qui lit les enregistrements


Le première utilise les instructions suivantes :

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
 
	st = OCI_StatementCreate(cn);
	OCI_Prepare(st,"select * from toto where id_toto=:vtoto");
	OCI_Execute(st);
	rs = OCI_GetResultset(st);
	if (OCI_FetchNext(rs))
	{	
		OCI_Execute(st);				
		rs = OCI_GetResultset(st);		
 
 
		return true;
	}
	else
	{
		return false
	}
La deuxième utilise les instructions suivantes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
	while (OCI_FetchNext(rs))
		traitement des enregs

Dans la première fonction, est-ce la meilleure méthode pour vérifier la présence d'enregs,
sachant que la deuxième fonction doit renvoyer tous les enregs ?
Est-ce que le statement aura un seul resultset associé à lui ?

Est-ce qu'une requête de type "select count()" exécuter dans le première fonction serait plus optimale ?

J'espère avoir été assez clair
Fly.