InterBase

De RAD Studio
Aller à : navigation, rechercher

Remonter à Développement d'applications de bases de données


RAD Studio fournit la prise en charge complète des bases de données InterBase 2020. InterBase 2020 est installé avec RAD Studio dans le répertoire suivant : C:\Program Files (x86)\Embarcadero\Studio\20.0\InterBase2020.

Sommaire

Exigences

Si vous voulez utiliser les bases de données InterBase 2020 vous devez posséder :

  • La dernière version client de InterBase. (Lorsque vous installez RAD Studio, la version client correcte de InterBase 2020 est automatiquement installée, sauf si vous désélectionnez spécifiquement InterBase 2020.)
  • Une machine x64 pour le support de la nouvelle plate-forme (en cas d'utilisation du 64 bits).

L'édition 64 bits peut seulement être installée sur les systèmes d'exploitation suivants :

  • Microsoft Windows 10
  • Microsoft Windows 8, 8.1
  • Microsoft Windows 7
  • Windows Vista
  • Windows Server 2016
  • Windows Server 2012, 2012 R2
  • Windows Server 2008, 2008 R2
  • macOS El Capitan 10.11
  • macOS Sierra 10.12
  • macOS High Sierra 10.13

Démarrage du serveur InterBase

  1. Choisissez Démarrer | Programmes | Embarcadero InterBase 2020 | 64-bit/32-bit instance = gds_db | InterBase Server Manager [instance = gds_db]
  2. Dans InterBase 2020 64 Server Manager, démarrez le serveur InterBase s'il n'est pas en cours d'exécution.

Prise en charge d'InterBase par RAD Studio

Licence intégrée pour InterBase 2020

InterBase 2020 Developer Edition est installé avec RAD Studio (cela ne s'applique pas à l'édition Starter) et est inclus dans la licence intégrée de RAD Studio. Il n'est pas nécessaire d'installer InterBase 2020 ToGo sur un serveur ou sur une station de travail d'utilisateur. Deux options de licence sont disponibles pour le déploiement : ToGo et IBLite. Cette fonctionnalité permet aux développeurs de créer plus facilement des applications InterBase C++Builder et Delphi en utilisant RAD Studio.

Remarque: La prise en charge de macOS 64 bits est uniquement disponible pour les applications Delphi.
Attention: Veuillez remarquer que les fichiers macOS 64 bits sont désormais fournis dans un dossier différent des fichiers macOS 32 bits pour InterBase ToGo.

Nouveautés de InterBase 2020

Pour plus de détails, le fichier Readme de 2020 est disponible ici

Nouvelle version de ODS

Les bases de données créées avec InterBase 2020 utilisent ODS 17.

isql

Nouvelle commande RECONNECT

isql prend en charge une nouvelle commande, RECONNECT. Vous pouvez utiliser RECONNECT dans des scripts isql et SQL afin de vous reconnecter à la dernière base de données ayant réussi à se connecter. Voir RECONNECT pour plus d’informations.

Nouvelle option en ligne de commande -names

isql prend en charge une nouvelle option en ligne de commande, -names <character set name>. Vous pouvez utiliser cette option pour spécifier le jeu de caractères à utiliser pour la connexion de base de données en cours. Voir Options de la ligne de commande pour plus d'informations.

Surveillance de toutes les bases de données en ligne

InterBase 2020 fournit la surveillance de toutes les bases de données en ligne d'un serveur via une seule connexion. Les statistiques au niveau des serveurs permettent aux administrateurs de mieux surveiller l'utilisation d'une instance.

Remarque: Cette fonctionnalité est seulement disponible avec ODS 17 et supérieur.

Pour utiliser cette fonctionnalité :

  1. Connectez-vous à la base de données d'administration sur le système
  2. Exécutez des requêtes de surveillance des performances sur n'importe quelle table TMP$ comme vous le feriez dans une seule base de données. Vous verrez les données cumulées de toutes les bases de données actuellement en ligne.

Restrictions

  • Exécutez des opérations UPDATE sur TMP$DATABASE pour SWEEP, FLUSH et RECLAIM pour une autre base de données que celle d'administration
  • Exécutez des opérations UPDATE sur TMP$TRANSACTIONS, les opérations COMMIT et ROLLBACK s'exécutent pour des bases de données autres que celle d'administration

Les abonnements reflètent les modifications ALTER TABLE

Les abonnements reflètent désormais les modifications apportées quand une colonne est ajoutée avec ALTER TABLE. Par exemple, l'utilisation du code suivant FOO_SUBS affiche la valeur BID de la colonne qui vient d'être ajoutée.

CREATE TABLE FOO (AID INT);
CREATE SUBSCRIPTION FOO_SUBS ON FOO;
INSERT INTO FOO VALUES (1);

ALTER TABLE FOO ADD BID INT;
UPDATE FOO SET BID=2;
COMMIT;
Remarque: Les bases de données doivent utiliser ODS 17.

Niveau d'isolation exclusif

L'isolation exclusive permet aux transactions d'acquérir un verrou exclusif sur une table cible et d'être les seuls capables d'exécuter SELECT, INSERT, UPDATE et DELETE sur une table. Reportez-vous à Niveau d'isolation exclusif pour plus d'informations.

Prise en charge des tables dérivées SQL

InterBase prend maintenant en charge les tables dérivées, fonctionnalité de développement SQL très employée. La syntaxe des tables dérivées améliore l'aptitude des applications existantes à utiliser InterBase comme SGBDR dorsal. Pour plus d'informations, reportez-vous à la documentation sur les tables dérivées.

Truncate Table (Tronquer la table)

La commande Truncate Table permet aux utilisateurs et aux applications de vider le contenu d'une table de base de données. Cette fonctionnalité est utile pour les tables dans lesquelles les lignes nécessitent des suppressions fréquentes. La commande Truncate Table fonctionne plus vite, requiert moins d'E/S, consigne et archive beaucoup moins d'informations qu'une commande de table DELETE FROM équivalente. Pour plus d'informations, reportez-vous à Truncate Table.

Temps d'attente des transactions

Spécifiez le temps pendant lequel les transactions attendent pour acquérir des ressources verrouillables. Il est désormais possible de spécifier une période durant laquelle les transactions attendent avant l'acquisition de ressources verrouillables. Pour plus d'informations, reportez-vous à Temps d'attente.

Commentaire sur une seule ligne

Vous pouvez ajouter un commentaire sur une seule ligne à une instruction SQL à l'aide de deux tirets. Pour plus d'informations et voir des exemples, reportez-vous à Commentaire.

--This is a comment line.

Fonctionnalités des releases précédentes

Les éléments suivants représentent la liste des fonctionnalités des releases précédentes.

Change Views™

La fonctionnalité Change Views™ utilise l'architecture multigénérationelle pour capturer les changements dans les données. Cette fonctionnalité vous permet de répondre rapidement à la question : "Quelles données ont changé depuis ma dernière consultation ?".

Auparavant, cela nécessitait des déclencheurs, une journalisation et/ou un nettoyage du journal WAL (Write Ahead Log) de transactions. Cela prenait du temps au développeur et affectait les performances de la base de données lorsque les charges de transactions ou les volumes de changements étaient importants. Désormais, avec Change Views, il n'existe plus de surcharge des performances sur les transactions existantes car Change Views fournit en permanence une vue cohérente des données changées, observable par les autres transactions.

Linux 32 bits et 64 bits

Les kits Linux, 32 bits et 64 bits, sont disponibles dans la base de données InterBase XE7. De nouvelles constructions Linux (12.0.0.124) sont disponibles pour InterBase XE7.

Amélioration des performances

De nombreuses améliorations des performances ont été implémentées pour cette release.

  • Amélioration des performances SMP. Dans InterBase XE7, les performances des lectures et écritures multiples ont été améliorées dans cette version.
  • Vidage distinctif. Dans InterBase XE3, le "vidage incrémentiel" exigeait que le serveur de base de données lise toutes les pages du fichier de base de données, mais écrive seulement les pages ayant été modifiées dans le fichier de vidage de la base de données cible. Dans XE7, grâce à l'implémentation d'un système de suivi, seules les pages devant être mises à jour depuis le dernier vidage étaient récupérées. Ainsi les mises à jour sont instantanément fournies à la cible. Il ne peut y avoir qu'un seul "vidage distinctif" par base de données source.
  • Amélioration du traitement des transactions Read Commmitted (RC) dans le cas de grands écarts de transaction (OIT - OAT).
  • Création plus rapide des transactions.

Compteurs de surveillance des performances

Les compteurs de surveillance des performances ont été mis à niveau, passant des valeurs 32 bits aux valeurs 64 bits. Cela inclut toutes les données stockées dans les tables de la base de données. IBConsole a été mis à jour pour cette version.

Nous attirons votre attention sur certaines différences relatives à ODS :

  • ODS <= 15 continuera à avoir des compteurs de nombres entiers (INTEGER) 32 bits comme avant (pour les bases de données dialecte 1 et dialecte 3)
  • ODS >= 16 aura des compteurs définis en tant que type de données à "double précision" pour les bases de données dialecte 1
  • ODS >= 16 aura des compteurs définis en tant que type de données "NUMERIC(18,0)" pour les bases de données dialecte 3 Comme vous le savez, par défaut, toute base de données est créée en tant que ODS 16, dialecte 3.

Sélectivité partielle de segment

Les versions précédentes de InterBase gèrent une valeur unique de sélectivité par index (qu'il s'agisse d'une clé unique ou composite). Les valeurs sont stockées par ordre décroissant et permettent de suivre les informations sur le nombre de doublons qui existent dans l'index complet – mais seulement au premier niveau. Or il est parfois utile d'avoir des informations sur les niveaux inférieurs. InterBase XE7 peut désormais suivre ces informations.

ID de transactions 64 bits

InterBase XE7 gère les ID de transactions jusqu'à 64 bits (48 bits actuellement), de sorte que les bases de données peuvent maintenant assimiler un plus grand nombre de transactions sans les anciennes limitations. Elle se limite elle-même à 48 bits, pour anticiper la croissance future des ID de transactions.

Modifications relatives à ODS

InterBase XE7 permet de restaurer une sauvegarde de base de données vers une version plus ancienne de ODS. Même si une opération de restauration de base de données crée une base de données avec la dernière version de ODS, le développeur peut avoir besoin de la restaurer vers une version plus ancienne. Les motifs sont les suivants :

  • Permettre qu'un même fichier de base de données soit déployé vers d'autres versions de moteur de base de données compatibles.
  • Fournir une solution aux bogues ODS difficiles à résoudre.
  • Tester les opérations ayant un impact sur les performances entre la version actuelle de ODS et des versions plus anciennes de ODS en utilisant un serveur/moteur unique pour restaurer plusieurs copies de la même base de données (une par ODS), puis exécuter les requêtes sur chacun de ces fichiers de base de données.

Mise à jour de OpenSSL

Les bibliothèques OpenSSL incluses dans InterBase XE7 sont mises à niveau de la version 1.0.0d vers la version 1.0.1i avec des correctifs de vulnérabilité de la sécurité (EN). OpenSSL est utilisé pour les fonctionnalités d'encryptage et OTW/SSL dans InterBase. Pour plus d'informations sur l'utilisation de OpenSSL dans InterBase XE7, reportez-vous au paragraphe Network Configuration dans Operations Guide (EN), ainsi qu'au paragraphe Encrypting your Data dans le document Data Definition (EN).

Prise en charge des API de services pour les opérations de vidage en ligne et d'archivage du journal

  • Vidage en ligne et vidage incrémentiel. Prise en charge des API de services pour les vidages en ligne et les vidages incrémentiels.
  • Actions de gestion de l'archivage du journal. Vous pouvez désormais demander à ce que le gestionnaire de services effectue diverses opérations sur les archives du journal InterBase.

Améliorations du pilote ODBC

Les anciens pilotes DataDirect ODBC ont été remplacés par un nouveau pilote InterBase ODBC. Néanmoins, le nouveau pilote InterBase ODBC peut ne pas être installé avec InterBase XE3. Le nouveau pilote ODBC est disponible pour les utilisateurs enregistrés en téléchargement sur http://cc.embarcadero.com/item/28975.

Création d'index simultanés

Avec InterBase XE3, lors de la restauration d'une base de données, les index d'une table peuvent tous être créés à la fois après la restauration des données de la table. De même, le recalcul de la sélectivité d'index (SELECTIVITY with SET STATISTICS) peut s'effectuer en simultané. InterBase XE3 active par défaut un thread assistant pour de telles opérations. Vous pouvez ajuster le nombre de threads simultanés disponibles pour de telles opérations en modifiant le paramètre de configuration MAX_ASSISTANTS dans le fichier ibconfig.

PAS D'ESPACE RESERVE pour les bases de données et les tables utilisateur

Dans InterBase XE3, une clause CREATE/ALTER TABLE est introduite pour empêcher la réservation d'espace et maximiser la compression des lignes. Cette clause est utile pour les tables dont les lignes sont rarement ou jamais MISES A JOUR ou SUPPRIMEES, dont les requêtes sont des requêtes complexes telles que les agrégats et les analyses qui traitent un pourcentage élevé de lignes, et dans lesquelles les index sont reconstruits et la base de données est fréquemment sauvegardée et/ou restaurée. L'utilisation de cette clause peut procurer jusqu'à 20 % d'économie d'espace de stockage.

Portabilité de base de données physique entre Windows, MacOSX, Linux, les périphériques iOS et Android

Depuis InterBase XE3, vous pouvez copier des fichiers de base de données entre Windows (32 bits et 64 bits), OS X, Linux, et des périphériques iOS et Android. Les bases de données InterBase créées sur la plate-forme de développement peuvent être facilement déployées vers d'autres plates-formes supportées. Vous pouvez créer des applications InterBase et des bases de données InterBase sur votre machine de développement, puis déployer facilement les applications et les bases de données vers d'autres plates-formes supportées, avec toutefois quelques restrictions.

Pour plus d'informations sur cette fonctionnalité, voir le fichier Readme de InterBase XE3 Update 4 installé avec RAD Studio, typiquement dans C:\Program Files (x86)\Embarcadero\Studio\20.0\InterBaseXE3\Doc, et également disponible en ligne à l'adresse http://docs.embarcadero.com/products/interbase/IBXE3Update4/Readme.html

Protection par mot de passe plus élevée

Une protection par mot de passe plus élevée est implémentée dans les nouvelles bases de données InterBase XE3 pour se conformer aux exigences des mots de passe de l'industrie des cartes de paiement - Data Security Standard (PCI-DSS). Cette fonctionnalité supplémentaire prend en charge une longueur de mot de passe efficace et plus grande entraînant une protection plus élevée.

Le mot de passe peut contenir de 8 à 32 caractères.

Plus grand cache de base de données pour InterBase 64 bits

Les bases de données InterBase 64 bits disposent à présent d'un plus grand cache. La limite pour le moteur 64 bits est de 75 millions de pages, au lieu de 750 000 pages pour les moteurs 32 bits.

EXECUTE STATEMENT pour les procédures stockées

Les développeurs de procédures stockées peuvent incorporer trois variations de EXECUTE STATEMENT au sein de leurs procédures stockées. Les variations dépendent du nombre de lignes renvoyées par la commande EXECUTE STATEMENT. Voici les trois cas :

  • Aucune ligne de donnée n'est renvoyée.
  • Une ligne de donnée est renvoyée.
  • Nombre variable de lignes renvoyées.

Taille du segment de clé d'index plus élevée

  • Une clé d'index peut à présent atteindre 4 octets de moins qu'un quart de la taille de la page.
  • Par défaut, les bases de données InterBase sont créées avec une taille de page de 4 Ko. Cette taille peut être redéfinie jusqu'à 16 Ko par le développeur de la base de données.
  • Une base de données dont la taille de page est de 4 Ko permet des index pouvant contenir 1 024 octets par clé.
  • Une taille de page de 16 Ko peut contenir 4 092 octets par clé, et ainsi de suite.

Paramètre ibconfig : THREAD_STACK_SIZE_MB

Le paramètre ibconfig THREAD_STACK_SIZE_MB contrôle la taille de la pile des divers threads dans InterBase. La valeur est exprimée sous la forme d'un multiple de méga-octets par thread. L'intervalle valide va de 2 à 32 Mo. Si la valeur est définie au-delà de l'intervalle, la valeur 2 Mo est prise par défaut.

Facteur de blocage spécifique aux tables

Le terme facteur de blocage est utilisé pour indiquer le nombre d'enregistrements stockés dans un bloc. InterBase emploie un facteur de blocage unique, à l'échelle de la base de données, qui maximise le nombre de lignes qu'il est possible de stocker sur une page de données.

Nettoyage rapide de la base de données

Le nettoyage d'une base de données est un moyen systématique de retirer les enregistrements obsolètes. Un nettoyage périodique empêche une base de données de devenir trop volumineuse. Dans le passé, le nettoyage diminuait les performances du système et les utilisateurs désactivaient la fonction de nettoyage automatique des bases de données à cause de l'impact sur les opérations de produit.

Voir aussi

Exemples