- Syntaxe 1 : Ouvrir une connexion prédéfinie : gestion automatique des connexions
- Syntaxe 2 : Utiliser une chaîne de caractères pour le provider OLE DB
- Syntaxe 2 et 3 : En cas d'échec, la description de la connexion n'est pas conservée
- Pseudo-connexion à une base de données HFSQL Classic
- Différences entre HOuvreConnexion et HDécritConnexion
- Fichier UDL (fichier de description de connexion OLE DB)
- Connecteur Natif Oracle : gestion de l'authentification externe
- Limitations
HOuvreConnexion (Fonction) En anglais : HOpenConnection
Non disponible avec ce type de connexion
Syntaxe <Résultat> : Booléen - Vrai si l'opération a été réalisée,
- Faux en cas de problème (par exemple, lors d'une connexion décrite par programmation, certains paramètres utilisés dans la fonction HDécritConnexion peuvent être inexacts).
<Connexion> : Chaîne de caractères (avec ou sans guillemets) ou variable de type Connexion Connexion à une base de données. Cette connexion correspond : - soit au nom de la connexion définie sous l'éditeur d'analyses,
- soit au nom de la connexion définie par la fonction HDécritConnexion. La description de la connexion doit être connue au moment de l'exécution de la fonction.
- soit au nom d'une variable de type Connexion.
Définir et ouvrir une connexion Masquer les détails
<Résultat> = HOuvreConnexion(<Nouvelle connexion> , <Utilisateur> [, <Mot de passe>] , <Source de données> [, <Base de données>] , <Provider OLE DB ou Accès Natif> [, <Accès> [, <Informations étendues> [, <Options supplémentaires>]]])
<Résultat> : Booléen - Vrai si l'opération a été réalisée,
- Faux en cas de problème. La fonction HErreurInfo permet d'identifier l'erreur. Pour affecter cette connexion à un fichier, utilisez la fonction HChangeConnexion. La description de la connexion sera détruite lors de la fermeture de la connexion.
<Nouvelle connexion> : Chaîne de caractères (avec guillemets) ou variable de type Connexion Nom de la nouvelle connexion à définir et à ouvrir. Ce nom ne doit pas être déjà utilisé par une autre connexion (connexion définie dans l'analyse, ou définie avec la fonction HOuvreConnexion ou HDécritConnexion).Ce paramètre correspond à la propriété ..Nom utilisée sur une variable de type Connexion. <Utilisateur> : Chaîne de caractères (avec guillemets) Nom de l'utilisateur utilisé pour la base de données. Ce paramètre peut être modifié et récupéré grâce à la propriété ..Utilisateur utilisée sur une variable de type Connexion. <Mot de passe> : Chaîne de caractères optionnelle (avec guillemets) Mot de passe de la connexion (si ce mot de passe existe). Si aucun mot de passe n'est nécessaire, utilisez une chaîne vide ("") ou le mot-clé NULL. Ce paramètre peut être modifié grâce à la propriété ..MotDePasse utilisée sur une variable de type Connexion. <Source de données> : Chaîne de caractères (avec guillemets) Chemin complet de la source de données. La connexion sera créée et ouverte pour cette source de données. <Base de données> : Chaîne de caractères optionnelle (avec guillemets) Nom de la base de données à utiliser sur la source de données. Si ce paramètre n'est pas nécessaire, utilisez une chaîne vide ("").Ce paramètre peut être connu et modifié grâce à la propriété ..BaseDeDonnées utilisée sur une variable de type Connexion. Si cette base de données n'existe pas, cette base sera automatiquement créée. <Provider OLE DB ou Accès Natif> : Chaîne de caractères ou Constante - Nom du provider OLE DB utilisé. Pour retrouver facilement la chaîne à utiliser, utilisez l'option "Connexion" de l'éditeur d'analyses (voir Notes).
ou - une des constantes suivantes :
| | hAccèsHF7 | Pseudo-connexion à une base de données HFSQL Classic. | hAccèsHFClientServeur | Connecteur Natif à une base de données HFSQL Client/Serveur. | hAccèsNatifAS400 | Connecteur Natif AS/400 (module optionnel de WINDEV/WEBDEV). | hAccèsNatifDB2 | Connecteur Natif DB2 (module optionnel de WINDEV/WEBDEV). | hAccèsNatifInformix | Connecteur Natif Informix (module optionnel de WINDEV/WEBDEV). | Versions 20 et supérieureshAccèsNatifMariaDB Nouveauté 20hAccèsNatifMariaDB hAccèsNatifMariaDB | Connecteur Natif MariaDB (module optionnel de WINDEV/WEBDEV). | hAccèsNatifMySQL | Connecteur Natif MySQL (module optionnel de WINDEV/WEBDEV). | hAccèsNatifOracle | Connecteur Natif Oracle (module optionnel de WINDEV/WEBDEV). | hAccèsNatifOracleLite | Connecteur Natif Oracle (module optionnel de WINDEV Mobile). | hAccèsNatifPostgreSQL | Connecteur Natif PostgreSQL (module optionnel de WINDEV/WEBDEV). | hAccèsNatifProgress | Connecteur Natif Progress (module optionnel de WINDEV/WEBDEV). | Versions 16 et supérieureshAccèsNatifSQLAzure Nouveauté 16hAccèsNatifSQLAzure hAccèsNatifSQLAzure | Connecteur Natif SQL Azure (module optionnel de WINDEV/WEBDEV, fourni avec le Connecteur Natif SQL Server). | Versions 16 et supérieureshAccèsNatifSQLite Nouveauté 16hAccèsNatifSQLite hAccèsNatifSQLite | Connecteur Natif SQLite (fourni en standard avec WINDEV/WEBDEV). | hAccèsNatifSQLServer | Connecteur Natif SQL Server (module optionnel de WINDEV/WEBDEV) Par défaut, l'ancien Connecteur Natif est utilisé. Pour forcer l'utilisation du nouveau Connecteur Natif SQL Serveur, utilisez la variable H.ModeSQLServer. | hAccèsNatifSQLServerMobile | Connecteur Natif SQL Serveur Mobile (module optionnel de WINDEV Mobile). | hAccèsNatifSybase | Connecteur Natif Sybase (module optionnel de WINDEV/WEBDEV). | hAccèsNatifXBase | Connecteur Natif xBase (fourni en standard avec WINDEV/WEBDEV). | hAccèsNatifXML | Connecteur Natif XML (fourni en standard avec WINDEV/WEBDEV). | hODBC | Provider OLE DB pour ODBC (permet d'accéder à une source de données ODBC déclarée dans les sources de données ODBC de Windows). | hOledbAccess97 | Provider OLE DB pour Access 97. | hOledbAccess2000 | Provider OLE DB pour Access 2000. | hOledbAccess2007 | Provider OLE DB pour Access 2007. | Versions 19 et supérieureshOledbAccess2010 Nouveauté 19hOledbAccess2010 hOledbAccess2010 | Provider OLE DB pour Access 2010. | hOledbDBase5 | Provider OLE DB pour DBase 5. | hOledbExcel2007 | Provider OLE DB pour Excel 2007. | hOledbExcel2000 | Provider OLE DB pour Excel 2000. | hOledbExcel97 | Provider OLE DB pour Excel 97. | hOledbLotus4 | Provider OLE DB pour Lotus 4. | hOledbOracle | Provider OLE DB pour Oracle. | hOledbSQLServer | Provider OLE DB pour SQL Server |
Les constantes disponibles sont les suivantes : | | hAccèsHF7 | Pseudo-connexion à une base HFSQL Mobile. | HAccèsHFClientServeur | Connexion à une base HFSQL Client/Serveur. | hAccèsNatifOracle | Connecteur Natif Oracle Lite (module optionnel). | hAccèsNatifSQLServerMobile | Connecteur Natif SQL Server Mobile (module optionnel). |
 Les constantes disponibles sont les suivantes : | | Versions 15 et supérieureshAccèsNatifSQLite Nouveauté 15hAccèsNatifSQLite hAccèsNatifSQLite | Connecteur Natif SQLite pour les applications Android. |
Les constantes disponibles sont les suivantes : | | hAccèsHF7 | Pseudo-connexion à une base HFSQL | HAccèsHFClientServeur | Connexion à une base HFSQL Client/Serveur. | hAccèsJDBCMySQL | Accès par JDBC à une base de données MySQL. | Versions 15 et supérieureshAccèsJDBCSQLite Nouveauté 15hAccèsJDBCSQLite hAccèsJDBCSQLite | Accès par JDBC à une base de données SQLite. | hAccèsJDBCSQLServer | Accès par JDBC à une base de données SQL Server. | Ce paramètre peut être connu et modifié grâce à la propriété ..Provider utilisée sur une variable de type Connexion.
<Accès> : Constante optionnelle Paramètre le type d'accès à la base. | | hOLectureEcriture (valeur par défaut) | La base de données est accessible en lecture et en écriture. Il est possible aussi bien de lire des enregistrements que d'écrire de nouveaux enregistrements. | hOLecture | La base de données est accessible uniquement en lecture. Seule la lecture des enregistrements est possible. Il n'est pas possible d'en ajouter ou d'en supprimer. | Ce paramètre peut être connu et modifié grâce à la propriété ..Accès utilisée sur une variable de type Connexion. <Informations étendues> : Chaîne de caractères optionnelle (entre guillemets) Informations optionnelles insérées dans la chaîne de connexion à la base de données. Si des mots-clés spécifiques sont reconnus, les informations correspondantes sont extraites de la chaîne de connexion. Le reste de la chaîne de connexion est envoyé à la base de données. Les paramètres extraits sont ensuite traités spécifiquement par l'accès natif ou OLE DB utilisé. Ces mots-clés doivent être indiqués de la manière suivante : "<Mot-clé> = <Valeur>;".Il est par exemple possible de préciser le paramètre "Trusted_Connection=YES" pour utiliser une connexion avec authentification par le login NT.
<Options supplémentaires> : Constante optionnelle Si ce paramètre n'est pas spécifié, le moteur HFSQL détermine automatiquement les meilleurs paramètres à utiliser en fonction de la base accédée et du provider OLE DB utilisé. Par défaut, ce paramètre correspond à la combinaison de constantes suivante : hCurseurServeur + hCurseurOpenKeySet + hCurseurOptimiste Toutefois, ces paramètres peuvent varier en fonction des informations retournées par la base. Pour forcer certains paramètres, il est possible de combiner les constantes suivantes : - Emplacement des curseurs
| | hCurseurClient | Curseur géré par le MDAC. Offre souvent plus de fonctionnalités qu'un curseur serveur. Un curseur client est obligatoirement un curseur statique. | hCurseurServeur | Curseur géré par la base de données. Ce curseur peut répercuter facilement les changements effectués par d'autres utilisateurs sur les données. |
- Type de curseur
| | hCurseurDynamique | Curseur offrant de nombreuses fonctionnalités, mais consommant beaucoup de mémoire. Ce curseur autorise tous les types de déplacement. Il permet d'accéder à toutes les modifications, ajouts et suppressions réalisées par les autres utilisateurs. | hCurseurForwardOnly | Curseur rapide et consommant peu de mémoire. Le déplacement se fait du premier enregistrement au dernier. Les données modifiées par les autres utilisateurs ne sont pas visibles. | hCurseurOpenKeySet | Curseur manipulant un jeu d'enregistrements figé. Seules des clés correspondant à l'enregistrement sont stockées et non les enregistrements (peu de ressources mémoire utilisées). Les enregistrements supprimés ne sont plus accessibles. Les modifications réalisées par les autres utilisateurs sont visibles (mais pas les ajouts). | hCurseurStatique | Récupère une copie de tous les enregistrements de la requête en mémoire (consommation mémoire importante). Tous les types de déplacement sont autorisés. |
- Mode de blocage
| | hCurseurLectureSeule | Le jeu d'enregistrements manipulé ne pourra pas être modifié. | hCurseurOptimiste | L'enregistrement n'est verrouillé que lors de sa mise à jour | hCurseurPessimiste | L'enregistrement est verrouillé dès son édition pour être modifié. |
Attention : tous les providers OLE DB ne gèrent pas tous les types de curseur.Ce paramètre peut être récupéré et modifié grâce à la propriété ..OptionsCurseur.
Remarques Différences entre HOuvreConnexion et HDécritConnexion Méthode 1 : Pour ouvrir une connexion au début de l'application et la refermer à la fin, il est nécessaire d'utiliser la fonction HOuvreConnexion. Pour utiliser cette connexion lors de la manipulation des fichiers ou des tables, il suffira de changer cette connexion avec la fonction HChangeConnexion.
HOuvreConnexion(MaConnexion, params) // Ouverture de la connexion HChangeConnexion(UnFichier, MaConnexion)
Méthode 2 : Pour décrire par programmation une connexion et l'ouvrir automatiquement lors de l'ouverture du fichier, il suffit : - de décrire la connexion avec la fonction HDécritConnexion
- d'associer cette connexion à la description de fichier voulue avec la fonction HChangeConnexion. L'ouverture de la connexion ne sera réalisée qu'au premier accès au fichier.
Cette solution peut être très utile lorsqu'une application manipule à la fois des fichiers HFSQL et des fichiers Oracle. Par exemple, si l'application utilise un seul fichier Oracle, dans un traitement bien spécifique, la connexion à la base Oracle ne sera faite qu'en cas de besoin. Si pour ce même type d'application la première solution est retenue, la connexion (qui peut être relativement longue) sera effectuée à chaque lancement de l'application. Exemple :
HDécritConnexion(MaConnexion, params) HChangeConnexion(UnFichier, MaConnexion) ... HLitPremier(unFichier) // Ouverture de la connexion ... HFerme(UnFichier) // Fermeture de la connexion
Versions 18 et supérieures Nouveauté 18
Documentation également disponible pour…
|
|
|
| |
| oledb pour AS400 / iSeries |
|
| HListeProvider() Récupère la liste des connexions disponible // Ex pour l'AS400 //IBM DB2 for i5/OS IBMDA400 OLE DB Provider<TAB>IBMDA400 // Existing applications, applications that want the most flexible OLE DB support, including support for SQL, RLA, Data Queues, and Commands. //IBM DB2 for i5/OS IBMDARLA OLE DB Provider<TAB>IBMDARLA // RLA-only support, forward-only cursors and block fetches with RLA. //IBM DB2 for i5/OS IBMDASQL OLE DB Provider<TAB>IBMDASQL // SQL-only support, SQL commitment control, and MTS.
gConnexion est une Connexion gConnexion..Provider="IBMDASQL" gConnexion..Utilisateur="MonProfil" gConnexion..MotDePasse="MonMdp" gConnexion..Serveur="192.168.1.1" HOuvreConnexion(gConnexion)
|
|
|
|
| |
| |
| |
| |
| |
| |
| | |
|