BF_SQLQueryOpen : exécute une requète d'interrogation (query) dans la base de données

Prototype :
string BF_SQLQueryOpen (
      const string sBFQueryName,
      const string sBFSQLQuery,
      const string sBFDbName,
      const string sBFSrvName,
      const string sBFDbType,
      const string sBFParam = "");


sBFQueryName
Nom interne de la requète.
Ne doit pas être vide.
Ne doit pas contenir de caractère "."
Ce nom doit être unique, même parmis les noms de table.

sBFSQLQuery
Texte de la requète.
Doit commencer par "SELECT".

sBFDbName
Nom de la base de données.
Ne doit pas être vide sauf pour les bases BDB qui ne supportent qu'une table par base.

sBFSrvName
Nom du serveur ou adresse IP.
C'est le nom du fichier MDB pour les bases JET.
Est vide pour les bases BDB.

sBFDbType
Type de base de données.
Utilisez les constantes :
- BF_DB_ACCESS : pour les bases de données Microsoft Jet.
- BF_DB_SQLSERVER : pour les bases Microsoft SQL Server.
- BF_DB_MYSQL : pour les bases MySQL.
- BF_DB_BDB : pour les bases BDB en mode texte.

sBFParam
Chaine de caractère contenant les paramètres.
La chaine peut être vide.
Les paramètres sont les mêmes que pour BF_OpenTable.
Paramètres gérés : voir la page dédié aux paramètres
Champ facultatif, par défaut est égal à "".

Valeur de retour
Est égal à "", si aucune erreur est intervenue durant le déroulement de la fonction.
Sinon un texte d'erreur est retourné.

Divers
Cette fonction soumet la requète à la base de données. En cas de succès, une table portant le même nom que la requète est diponible. On peut alors utiliser la BF_RecordReadNext pour lire les enregistrements.
Une requète doit être fermée avec BF_TableClose si elle n'est plus utile.
Toutes les syntaxes comprises par la base de données sont possible : GROUP BY, HAVING, UNION, ...
On peut utiliser des fonctions : par ex. "SELECT version()" sur une base MYSQL.
Attention : toutes les syntaxes ne sont pas disponibles ou ne sont pas les mêmes sur toutes les bases de données (par ex. syntaxe des dates).

Exemples
string sErreur = BF_SQLQueryOpen ("Maquery", "SELECT * from Table", "test.mdb", "", BF_DB_ACCESS, "");
if (sErreur != "")
{ .... erreur ....}
=> ouverture d'une requète Microsoft JET.

string sError = BF_SQLQueryOpen ("Maquery2", "select version()", "testsql", "123.045.0.123", BF_DB_MYSQL351, "USER=moi;PSW=toto;PORT=12345");
=> affichage de la version MySQL Server, sous le user "moi" et le mot de passe "toto" avec le port 12345.