Share via


Objets de source de données OLE DB (SQL Server Compact)

En programmation OLE DB, l'objet source de données représente la banque de données sous-jacente d'un fournisseur. Pour se connecter à un fournisseur OLE DB, un consommateur doit d'abord créer et initialiser une instance de l'objet source de données.

Objet source de données SQL Server Compact Edition

Dans Microsoft SQL Server Compact 3.5, vous créez l'objet source de données en appelant la fonction OLE CoCreateInstance et en transmettant ensuite le CLSID (identificateur de classe) du fournisseur OLE DB de SQL Server Compact 3.5, en l'occurrence CLSID_SQLSERVERCE. Étant donné que SQL Server Compact 3.5 est un serveur in-process, vous créez les instances d'objets OLE DB SQL Server Compact 3.5 à l'aide de la macro CLSCTX_INPROC_SERVER de manière à indiquer le contexte exécutable.

SQL Server Compact 3.5 utilise uniquement la propriété DBPROP_INIT_DATASOURCE pour spécifier la source de données souhaitée. Cette propriété reçoit comme valeur le chemin d'accès complet du fichier de base de données à ouvrir. Après la définition de cette propriété, le consommateur initialise l'objet de source de données. Celui-ci définit l'environnement nécessaire à l'échange de données entre le consommateur et SQL Server Compact 3.5. Une fois l'objet de source de données initialisé, le consommateur peut obtenir des informations précises sur la banque de données, sans toutefois être en mesure d'accéder aux données. Cet objet de source de données permet ensuite de créer un ou plusieurs objets de session. Ces derniers permettent à leur tour de créer les transactions, les commandes et les ensembles de lignes nécessaires.

Le fournisseur OLE DB de SQL Server Compact 3.5 vous permet également de créer une base de données. Pour plus d'informations, consultez Création de bases de données à l'aide d'OLE DB.

Les bases de données protégées par mot de passe sont également prises en charge. Cette fonction de sécurité oblige l'utilisateur à indiquer un mot de passe lorsqu'il initialise l'objet de source de données. Pour plus d'informations, consultez Accès aux bases de données protégées par mot de passe à l'aide d'OLE DB.

Limites de l'objet de source de données

L'objet de source de données du fournisseur OLE DB de SQL Server Compact 3.5 présente les limites suivantes :

  • Le concept de catalogue tel que défini dans OLE DB n'est pas utilisé dans SQL Server Compact 3.5. La propriété DBPROP_INIT_DATASOURCE définit la base de données à utiliser et le fournisseur OLE DB de SQL Server Compact 3.5 traite cette base de données en tant que catalogue actif.

  • La possibilité de modifier la banque de données active n'est pas prise en charge. Les clients qui souhaitent modifier la banque de données doivent désinitialiser l'objet de source de données, définir le nouveau nom de la banque de données, puis réinitialiser l'objet de source de données.

Propriétés de la source de données spécifiques au fournisseur

SQL Server Compact 3.5 prend en charge les propriétés spécifiques au fournisseur suivantes dans le jeu de propriétés propres au fournisseur DBPROPSET_SSCE_DBINIT :

Propriété

Définition

DBPROP_SSCE_AUTO_SHRINK_THRESHOLD

Pourcentage d'espace disponible autorisé dans le fichier de base de données avant le démarrage de la réduction automatique. La valeur 100 désactive la réduction automatique. Si elle n'est pas spécifiée, la valeur par défaut est 60.

DBPROP_SSCE_DBCASESENSITIVE

Valeur booléenne qui détermine si le classement de base de données respecte la casse. Doit avoir la valeur true pour activer le classement avec respect de la casse ou false pour activer le classement sans respect de la casse. Si elle n'est pas spécifiée, la valeur par défaut est False.

RemarqueRemarque
Cette propriété est disponible à compter de la version SQL Server Compact 3.5 SP1. Pour plus d'informations, consultez Utilisation des classements (SQL Server Compact).

DBPROP_SSCE_DBPASSWORD

Mot de passe de la base de données, qui peut contenir jusqu'à 40 caractères. S'il n'est pas spécifié, la valeur par défaut correspond à l'absence de mot de passe. Cette propriété est requise si vous activez le chiffrement sur la base de données. Si vous spécifiez un mot de passe, le chiffrement est activé sur la base de données. Pour plus d'informations, consultez Accès aux bases de données protégées par mot de passe à l'aide d'OLE DB.

DBPROP_SSCE_DEFAULT_LOCK_ESCALATION

Nombre de verrous acquis par une transaction avant que vous tentiez une escalade d'une ligne vers une table ou d'une page vers une table. S'il n'est pas spécifié, la valeur par défaut est 100.

DBPROP_SSCE_DEFAULT_LOCK_TIMEOUT

Durée par défaut, en millisecondes, pendant laquelle une transaction attend un verrou. Si elle n'est pas spécifiée, la valeur par défaut est 5000 millisecondes pour les ordinateurs de bureau et 2000 millisecondes pour les appareils.

DBPROP_SSCE_ENCRYPTDATABASE

Valeur booléenne qui détermine si la base de données est chiffrée. Vous devez lui attribuer la valeur true pour activer le chiffrement, ou false pour indiquer l'absence de chiffrement. Si elle n'est pas spécifiée, la valeur par défaut est false. Si vous activez le chiffrement, vous devez également spécifier un mot de passe à l'aide de la propriété de mot de passe. Si vous spécifiez un mot de passe, le chiffrement est activé quelle que soit la valeur que vous attribuez à cette propriété.

DBPROP_SSCE_ENCRYPTIONMODE

Type de chiffrement utilisé pour sécuriser le fichier de base de données. Pour plus d'informations sur le mode de chiffrement, consultez la description dans Propriétés spécifiques au fournisseur (OLE DB).

DBPROP_SSCE_FLUSH_INTERVAL

Délai au terme duquel toutes les transactions validées sont vidées vers le disque. S'il n'est pas spécifié, la valeur par défaut est 10.

DBPROP_SSCE_MAXBUFFERSIZE

Taille maximale de la base de données, en mégaoctets. Si elle n'est pas spécifiée, la valeur par défaut est 640.

DBPROP_SSCE_MAX_DATABASE_SIZE

Taille maximale de la base de données, en mégaoctets. Si elle n'est pas spécifiée, la valeur par défaut est 128.

DBPROP_SSCE_TEMPFILE_DIRECTORY

Emplacement de la base de données temporaire. S'il n'est pas spécifié, la procédure par défaut consiste à utiliser la base de données indiquée dans la propriété data source du stockage temporaire. Pour plus d'informations, consultez Spécification de l'emplacement de la base de données temporaire à l'aide d'OLE DB et Bases de données temporaires.

DBPROP_SSCE_TEMPFILE_MAX_SIZE

Taille maximale de la base de données temporaire, en mégaoctets.