PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE


  • 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
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Ouvre une connexion à une base de données spécifique. La connexion reste ouverte jusqu'à l'appel de la fonction HFermeConnexion. La fonction HOuvreConnexion permet de :
  • ouvrir une connexion prédéfinie.
  • définir et ouvrir une connexion. Il est ensuite nécessaire d'affecter cette connexion à un fichier de données avec la fonction HChangeConnexion.
  • définir et ouvrir une connexion en utilisant une chaîne de connexion. Cette syntaxe peut être utilisée avec certains providers OLE DB ayant des chaînes de connexion ADO spécifique.
    Windows MobilePHP Cette option n'est pas disponible.
    Java Accès par JDBC : Cette option n'est pas disponible.
  • ouvrir une connexion définie avec une variable de type Connexion.
Attention : L'ordre d'utilisation des fonctions permettant de se connecter à une base de données HFSQL Client/Serveur est important. Consultez Optimiser les temps de connexion aux bases HFSQL Client/Serveur pour plus de détails.
Versions 17 et supérieures
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Universal Windows 10 App Cette fonction permet uniquement de manipuler des connexions HFSQL Client/Serveur.
Nouveauté 18
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Universal Windows 10 App Cette fonction permet uniquement de manipuler des connexions HFSQL Client/Serveur.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Universal Windows 10 App Cette fonction permet uniquement de manipuler des connexions HFSQL Client/Serveur.
Remarque : A partir de la version 19, HFSQL est le nouveau nom de HyperFileSQL.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Etats et RequêtesWindowsLinuxUniversal Windows 10 AppWindows MobileJavaAjaxCode Utilisateur (MCU)HFSQLHFSQL Client/ServeurOLE DBConnecteurs Natifs (Accès Natifs)
MaConnexion est une Connexion
// Description de la connexion
MaConnexion..Utilisateur = "USER"
MaConnexion..MotDePasse = "PASSWORD"
MaConnexion..Serveur = "MONSERVEUR"
MaConnexion..BaseDeDonnées = "Base de données"
MaConnexion..Provider = hAccèsHFClientServeur
MaConnexion..Accès = hOLectureEcriture
MaConnexion..InfosEtendues = "Infos étendues"
MaConnexion..OptionsCurseur = hCurseurClient
 
HOuvreConnexion(MaConnexion)
Syntaxe

Ouvrir une connexion prédéfinie Masquer les détails

<Résultat> = HOuvreConnexion(<Connexion>)
<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).
La fonction HErreurInfo permet d'identifier l'erreur.
<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.
Ce paramètre peut être connu et modifié grâce à la propriété ..Source (ou ..Serveur) utilisée sur une variable de type Connexion.
HFSQL Client/Serveur Ce paramètre correspond au nom du serveur. Il est possible de préciser le numéro de port utilisé par le serveur HFSQL. Par défaut, le numéro de port utilisé est 4900. Si le numéro de port du serveur HFSQL est différent, utilisez la notation suivante :
<Nom du poste> : <Numéro de port>
Exemple : "NomPoste:4901".
Pour une utilisation via Internet, une gestion des ports avec Firewall est nécessaire. Pour plus de détails, consultez Gestion des ports.
Versions 15 et supérieures
Il est possible d'indiquer une adresse IPv6 en écrivant l'adresse IPv6 entre des crochets. Dans ce cas, le numéro de port doit être indiqué après le crochet fermant. Par exemple : [0154:2145:2155::5554]:4900.
Nouveauté 15
Il est possible d'indiquer une adresse IPv6 en écrivant l'adresse IPv6 entre des crochets. Dans ce cas, le numéro de port doit être indiqué après le crochet fermant. Par exemple : [0154:2145:2155::5554]:4900.
Il est possible d'indiquer une adresse IPv6 en écrivant l'adresse IPv6 entre des crochets. Dans ce cas, le numéro de port doit être indiqué après le crochet fermant. Par exemple : [0154:2145:2155::5554]:4900.
Java Accès par JDBC :
  • Ce paramètre doit correspondre à l'URL de connexion à la base de données. Cet URL est spécifique à chaque driver.
  • Selon le driver JDBC utilisé, il est nécessaire de spécifier le nom de la base de données dans l'URL de connexion.
AndroidWidget Android
Versions 18 et supérieures
Pour une connexion à une base HFSQL Client/Serveur qui se trouve sur le poste de développement depuis un émulateur Android, il faut utiliser l'adresse IP 10.0.2.2 avec le port du serveur. Exemple : "10.0.2.2:4900".
Pour une connexion à une base HFSQL Client/Serveur qui se trouve sur le réseau du poste de développement depuis un émulateur Android, il faut utiliser le nom complet du serveur avec le domaine alors qu'avec le simulateur WINDEV Mobile, le nom de la machine sans le domaine peut suffire. Exemple : "posteServeur@domaine.com:4900".
Nouveauté 18
Pour une connexion à une base HFSQL Client/Serveur qui se trouve sur le poste de développement depuis un émulateur Android, il faut utiliser l'adresse IP 10.0.2.2 avec le port du serveur. Exemple : "10.0.2.2:4900".
Pour une connexion à une base HFSQL Client/Serveur qui se trouve sur le réseau du poste de développement depuis un émulateur Android, il faut utiliser le nom complet du serveur avec le domaine alors qu'avec le simulateur WINDEV Mobile, le nom de la machine sans le domaine peut suffire. Exemple : "posteServeur@domaine.com:4900".
Pour une connexion à une base HFSQL Client/Serveur qui se trouve sur le poste de développement depuis un émulateur Android, il faut utiliser l'adresse IP 10.0.2.2 avec le port du serveur. Exemple : "10.0.2.2:4900".
Pour une connexion à une base HFSQL Client/Serveur qui se trouve sur le réseau du poste de développement depuis un émulateur Android, il faut utiliser le nom complet du serveur avec le domaine alors qu'avec le simulateur WINDEV Mobile, le nom de la machine sans le domaine peut suffire. Exemple : "posteServeur@domaine.com:4900".
Pour une connexion à une base SQLite : chemin complet du fichier contenant la base de données SQLite sur le périphérique Android.
Exemple : /sdcard/bdd/MaBaseDeDonnees.db
Si le paramètre correspond à chaîne vide (""), le fichier contenant les données de la base sera créé dans le répertoire "databases" de l’application et portera le nom de l'application suivi de l'extension ".db".
<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èsHF7Pseudo-connexion à une base de données HFSQL Classic.
    hAccèsHFClientServeurConnecteur Natif à une base de données HFSQL Client/Serveur.
    hAccèsNatifAS400Connecteur Natif AS/400 (module optionnel de WINDEV/WEBDEV).
    hAccèsNatifDB2Connecteur Natif DB2 (module optionnel de WINDEV/WEBDEV).
    hAccèsNatifInformixConnecteur Natif Informix (module optionnel de WINDEV/WEBDEV).
    Versions 20 et supérieures
    hAccèsNatifMariaDB
    Nouveauté 20
    hAccèsNatifMariaDB
    hAccèsNatifMariaDB
    Connecteur Natif MariaDB (module optionnel de WINDEV/WEBDEV).
    hAccèsNatifMySQLConnecteur Natif MySQL (module optionnel de WINDEV/WEBDEV).
    hAccèsNatifOracleConnecteur Natif Oracle (module optionnel de WINDEV/WEBDEV).
    hAccèsNatifOracleLiteConnecteur Natif Oracle (module optionnel de WINDEV Mobile).
    hAccèsNatifPostgreSQLConnecteur Natif PostgreSQL (module optionnel de WINDEV/WEBDEV).
    hAccèsNatifProgressConnecteur Natif Progress (module optionnel de WINDEV/WEBDEV).
    Versions 16 et supérieures
    hAccèsNatifSQLAzure
    Nouveauté 16
    hAccèsNatifSQLAzure
    hAccèsNatifSQLAzure
    Connecteur Natif SQL Azure (module optionnel de WINDEV/WEBDEV, fourni avec le Connecteur Natif SQL Server).
    Versions 16 et supérieures
    hAccèsNatifSQLite
    Nouveauté 16
    hAccèsNatifSQLite
    hAccèsNatifSQLite
    Connecteur Natif SQLite (fourni en standard avec WINDEV/WEBDEV).
    hAccèsNatifSQLServerConnecteur 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èsNatifSQLServerMobileConnecteur Natif SQL Serveur Mobile (module optionnel de WINDEV Mobile).
    hAccèsNatifSybaseConnecteur Natif Sybase (module optionnel de WINDEV/WEBDEV).
    hAccèsNatifXBaseConnecteur Natif xBase (fourni en standard avec WINDEV/WEBDEV).
    hAccèsNatifXMLConnecteur Natif XML (fourni en standard avec WINDEV/WEBDEV).
    hODBCProvider 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).
    hOledbAccess97Provider OLE DB pour Access 97.
    hOledbAccess2000Provider OLE DB pour Access 2000.
    hOledbAccess2007Provider OLE DB pour Access 2007.
    Versions 19 et supérieures
    hOledbAccess2010
    Nouveauté 19
    hOledbAccess2010
    hOledbAccess2010
    Provider OLE DB pour Access 2010.
    hOledbDBase5Provider OLE DB pour DBase 5.
    hOledbExcel2007Provider OLE DB pour Excel 2007.
    hOledbExcel2000Provider OLE DB pour Excel 2000.
    hOledbExcel97Provider OLE DB pour Excel 97.
    hOledbLotus4Provider OLE DB pour Lotus 4.
    hOledbOracleProvider OLE DB pour Oracle.
    hOledbSQLServerProvider OLE DB pour SQL Server

    Windows Mobile Les constantes disponibles sont les suivantes :
    hAccèsHF7Pseudo-connexion à une base HFSQL Mobile.
    HAccèsHFClientServeurConnexion à une base HFSQL Client/Serveur.
    hAccèsNatifOracleConnecteur Natif Oracle Lite (module optionnel).
    hAccèsNatifSQLServerMobileConnecteur Natif SQL Server Mobile (module optionnel).

    AndroidWidget Android Les constantes disponibles sont les suivantes :
    Versions 15 et supérieures
    hAccèsNatifSQLite
    Nouveauté 15
    hAccèsNatifSQLite
    hAccèsNatifSQLite
    Connecteur Natif SQLite pour les applications Android.

    Java Les constantes disponibles sont les suivantes :
    hAccèsHF7Pseudo-connexion à une base HFSQL
    HAccèsHFClientServeurConnexion à une base HFSQL Client/Serveur.
    hAccèsJDBCMySQLAccès par JDBC à une base de données MySQL.
    Versions 15 et supérieures
    hAccèsJDBCSQLite
    Nouveauté 15
    hAccèsJDBCSQLite
    hAccèsJDBCSQLite
    Accès par JDBC à une base de données SQLite.
    hAccèsJDBCSQLServerAccès par JDBC à une base de données SQL Server.
OLE DB Attention : Pour utiliser une connexion OLE DB il est nécessaire :
  • d'installer le MDAC version 2.6 minimum (installation réalisée avec WINDEV/WEBDEV et lors de la création de la version Client).
  • d'installer le provider OLE DB correspondant à la base de données manipulée.
    Ce paramètre peut être récupéré grâce à la propriété ..CxProviderOLEDB.
PHP Ce paramètre peut correspondre à une des constantes suivantes :
hAccèsNatifAS400Connecteur Natif AS/400 (module optionnel de WEBDEV).
Versions 20 et supérieures
hAccèsNatifMariaDB
Nouveauté 20
hAccèsNatifMariaDB
hAccèsNatifMariaDB
Connecteur Natif MariaDB (module optionnel de WINDEV/WEBDEV).
hAccèsNatifMySQLConnecteur Natif MySQL (module optionnel de WEBDEV).
Versions 15 et supérieures
hAccèsNatifOracle
Nouveauté 15
hAccèsNatifOracle
hAccèsNatifOracle
Connecteur Natif Oracle (module optionnel de WEBDEV).
Versions 15 et supérieures
hAccèsNatifPostgreSQL
Nouveauté 15
hAccèsNatifPostgreSQL
hAccèsNatifPostgreSQL
Connecteur Natif PostgreSQL (module optionnel de WEBDEV).
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.
hOLectureLa 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.
HFSQL Client/Serveur Cette constante est ignorée.
Ce paramètre peut être connu et modifié grâce à la propriété ..Accès utilisée sur une variable de type Connexion.
Java Accès par JDBC : Ce paramètre est ignoré.
PHP Ce paramètre n'est pas disponible.
<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.
OLE DBConnecteurs Natifs (Accès Natifs) Les mots-clés reconnus par OLE DB et les accès natifs sont présentés dans la page Informations optionnelles de connexion.
Exemple de chaîne à utiliser :
"WD Cache Size = 10000; Server Port=3306;"
HFSQL Client/Serveur Les mots-clés reconnus pour l'accès par HFSQL Client/Serveur :
COMPRESSIONActive ou non la compression des données transmises entre le Client et le Serveur. Ce mot-clé peut correspondre à :
  • VRAI pour activer la compression des données.
  • FAUX pour ne pas compresser les données.
CRYPTAGEActive le cryptage des informations transmises entre le Client et le Serveur.
Ce mot-clé peut prendre deux valeurs :
  • RAPIDE
  • RC5_16 pour utiliser un cryptage RC5 à 16 boucles.
BDD_EXISTETeste l'existence de la base de données. Si la base de données spécifiée n'existe pas, cette base de données n'est pas créée et la fonction HOuvreConnexion retourne Faux.
Ce paramètre peut être récupéré et modifié grâce à la propriété ..InfosEtendues.
Java Base de données HFSQL accédée à l'aide d'un serveur RMI : Ce paramètre correspond à l'adresse du serveur RMI et au port utilisé. Le format à utiliser est le suivant : "RMI=<Adresse du serveur>:<Numéro du port>". Par exemple : "RMI=192.168.52.148:1099".
Java Accès par JDBC : Ce paramètre est obligatoire. Il doit correspondre au nom complet du driver JDBC à utiliser. Ce nom est sensible à la casse.
PHP Ce paramètre n'est pas disponible.
<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
    hCurseurClientCurseur géré par le MDAC. Offre souvent plus de fonctionnalités qu'un curseur serveur. Un curseur client est obligatoirement un curseur statique.
    hCurseurServeurCurseur 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
    hCurseurDynamiqueCurseur 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.
    hCurseurForwardOnlyCurseur 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.
    hCurseurOpenKeySetCurseur 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).
    hCurseurStatiqueRé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
    hCurseurLectureSeuleLe jeu d'enregistrements manipulé ne pourra pas être modifié.
    hCurseurOptimisteL'enregistrement n'est verrouillé que lors de sa mise à jour
    hCurseurPessimisteL'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.
Windows Mobile Ce paramètre est ignoré.
PHP Ce paramètre n'est pas disponible.
WINDEVWEBDEV - Code ServeurEtats et RequêtesAjaxCode Utilisateur (MCU)

Définir et ouvrir une connexion en définissant la chaîne de connexion Masquer les détails

<Résultat> = HOuvreConnexion(<Connexion> , <Chaîne de connexion ADO> [, <Accès>])
<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. La description de la connexion sera détruite lors de la fermeture de la connexion.
<Connexion> : Chaîne de caractères (avec guillemets)
Nom de la nouvelle connexion à définir et à ouvrir. Ce nom ne doit pas être déjà utilisé par une connexion (connexion définie dans l'analyse, ou définie avec la fonction HOuvreConnexion ou HDécritConnexion).
<Chaîne de connexion ADO> : Chaîne de caractères (avec guillemets)
Chaîne de connexion ADO à utiliser. Pour plus de détails sur la syntaxe de cette chaîne de connexion, consultez la documentation du provider OLE DB utilisé.
<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.
hOLectureLa 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.
Remarques
WINDEVWEBDEV - Code ServeurEtats et RequêtesiPhone/iPadUniversal Windows 10 AppWindows MobilePHPAjaxCode Utilisateur (MCU)HFSQLHFSQL Client/ServeurOLE DBConnecteurs Natifs (Accès Natifs)

Syntaxe 1 : Ouvrir une connexion prédéfinie : gestion automatique des connexions

  • La connexion associée à un fichier de données est automatiquement ouverte lors de l'ouverture du fichier de données. La connexion est fermée lorsque le dernier fichier de données utilisant cette connexion est fermé.
  • Si une connexion est ouverte avec la fonction HOuvreConnexion, cette connexion reste ouverte même si aucun fichier de données ne l'utilise.
  • Si l'application effectue de nombreuses ouvertures et fermetures de fichiers de données successives, la gestion automatique des connexions va provoquer de nombreuses ouvertures/fermetures des connexions, entraînant d'importants ralentissements. Il est dans ce cas conseillé d'utiliser la fonction HOuvreConnexion pour forcer la conservation de la connexion ouverte.
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindows MobilePHPAjaxCode Utilisateur (MCU)HFSQLHFSQL Client/ServeurOLE DBConnecteurs Natifs (Accès Natifs)

Syntaxe 2 : Utiliser une chaîne de caractères pour le provider OLE DB

Pour trouver facilement la chaîne de caractères à utiliser pour définir le provider OLE DB, il est conseillé de procéder de la manière suivante :
  1. Dans l'éditeur d'analyses, affichez l'écran de description de connexion (option "Analyse .. Connexion")
  2. Sélectionnez le provider à utiliser (combo "Connexion par").
  3. La chaîne de caractères correspondant au provider s'affiche. Cette chaîne de caractères peut être utilisée dans la syntaxe 2 à la place des constantes.
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindows MobilePHPAjaxCode Utilisateur (MCU)HFSQLHFSQL Client/ServeurOLE DBConnecteurs Natifs (Accès Natifs)

Syntaxe 2 et 3 : En cas d'échec, la description de la connexion n'est pas conservée

Si l'ouverture de la connexion échoue, la description de cette connexion n'est pas validée. Il est ainsi possible de redéfinir une connexion du même nom.
Par exemple, si la tentative de connexion échoue avec le mot de passe par défaut, il est possible de réaliser une nouvelle tentative avec un autre mot de passe.
WINDEVWEBDEV - Code ServeurEtats et RequêtesiPhone/iPadWindows MobileAjaxCode Utilisateur (MCU)HFSQL

Pseudo-connexion à une base de données HFSQL Classic

Des fichiers de données OLE DB ou natifs sont décrits sous l'éditeur d'analyses. Pour manipuler ces descriptions avec une base de données HFSQL Classic, il suffit de spécifier la constante hAccèsHF7 comme nom de provider.
Les fichiers de données au format HFSQL Classic correspondant à la description des fichiers OLE DB ou natifs seront créés si nécessaire dans le répertoire défini par le paramètre <Source des données>.

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
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindows MobileAjaxCode Utilisateur (MCU)OLE DB

Fichier UDL (fichier de description de connexion OLE DB)

Pour créer un fichier UDL :
  1. Créez un fichier texte portant l'extension "UDL".
  2. Double-cliquez sur ce fichier. La fenêtre des propriétés des liaisons de données s'ouvre.
  3. Paramétrez la connexion.
  4. Testez la connexion.
  5. Validez (bouton "OK"). Le fichier UDL est utilisable.
Versions 18 et supérieures
WINDEVWEBDEV - Code ServeurConnecteurs Natifs (Accès Natifs)

Connecteur Natif Oracle : gestion de l'authentification externe

Pour se connecter via une authentification externe, il est nécessaire d'utiliser les paramètres de connexion suivants :
  • <Nom de l'utilisateur> = / (slash)
  • <Mot de passe> = "" (chaîne vide)
Remarque : L'authentification externe consiste à se baser sur le nom de l'utilisateur Windows et son mot de passe pour se connecter à la base de données. L’authentification externe nécessite un paramétrage du serveur. Reportez-vous à la documentation de Oracle pour savoir comment autoriser les authentifications externes sur le serveur.
Nouveauté 18
WINDEVWEBDEV - Code ServeurConnecteurs Natifs (Accès Natifs)

Connecteur Natif Oracle : gestion de l'authentification externe

Pour se connecter via une authentification externe, il est nécessaire d'utiliser les paramètres de connexion suivants :
  • <Nom de l'utilisateur> = / (slash)
  • <Mot de passe> = "" (chaîne vide)
Remarque : L'authentification externe consiste à se baser sur le nom de l'utilisateur Windows et son mot de passe pour se connecter à la base de données. L’authentification externe nécessite un paramétrage du serveur. Reportez-vous à la documentation de Oracle pour savoir comment autoriser les authentifications externes sur le serveur.
WINDEVWEBDEV - Code ServeurConnecteurs Natifs (Accès Natifs)

Connecteur Natif Oracle : gestion de l'authentification externe

Pour se connecter via une authentification externe, il est nécessaire d'utiliser les paramètres de connexion suivants :
  • <Nom de l'utilisateur> = / (slash)
  • <Mot de passe> = "" (chaîne vide)
Remarque : L'authentification externe consiste à se baser sur le nom de l'utilisateur Windows et son mot de passe pour se connecter à la base de données. L’authentification externe nécessite un paramétrage du serveur. Reportez-vous à la documentation de Oracle pour savoir comment autoriser les authentifications externes sur le serveur.

Limitations

  • WINDEVWEBDEV - Code ServeurEtats et RequêtesWindows MobilePHPAjaxCode Utilisateur (MCU)HFSQLHFSQL Client/ServeurOLE DBConnecteurs Natifs (Accès Natifs) Cette fonction n'est pas disponible lors de l'utilisation d'une base de données via Accès Distant.
  • AndroidWidget Android Seule la constante hAccèsNatifSQLite est disponible pour Android.
Composante : wd250hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
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)
Lionel
19 juin 2018