Méthode Installer.OpenDatabase

La méthode OpenDatabase de l’objet Installer ouvre une base de données existante ou en crée une nouvelle, renvoyant un objet Database. Elle génère une erreur si l’objet Database ne peut pas être correctement créé et ouvert.

Syntaxe

Installer.OpenDatabase(
  name,
  openMode
)

Paramètres

name

Chaîne nécessaire qui contient le nom de chemin de la base de données. Si une chaîne vide est fournie, une base de données temporaire est créée et n’est pas conservée.

openMode

Paramètre de la liste ou chaîne suivante qui contient le nom du chemin d’accès du nouveau fichier de base de données de sortie dans lequel écrire lors de la validation.

Paramètre Signification
msiOpenDatabaseModeReadOnly
0
Ouvre une base de données en lecture seule, sans modification persistante.
msiOpenDatabaseModeTransact
1
Ouvre une base de données en lecture/écriture en mode transaction.
msiOpenDatabaseModeDirect
2
Ouvre une base de données en lecture/écriture directe sans transaction.
msiOpenDatabaseModeCreate
3
Crée une base de données en mode Transact de lecture/écriture.
msiOpenDatabaseModeCreateDirect
4
Crée une base de données en mode direct de lecture/écriture.
msiOpenDatabaseModeListScript
5
Ouvre une base de données pour afficher les fichiers de script de publication, tels que les fichiers générés par la méthode CreateAdvertiseScript.
msiOpenDatabaseModePatchFile
32
Ajoute cet indicateur pour indiquer un fichier de correctif.

 

Valeur retournée

Objet Database qui représente la base de données du programme d’installation existante ou nouvelle qui a été ouverte.

Notes

Lorsqu’une base de données est ouverte en tant que sortie d’une autre base de données, le flux d’informations de synthèse de la base de données de sortie est en fait un miroir en lecture seule de la base de données d’origine et ne peut donc pas être modifié. En outre, elle n’est pas conservée avec la base de données. Pour créer ou modifier les informations récapitulatives de la base de données de sortie, elle doit être fermée et rouverte.

Pour apporter et enregistrer des modifications dans une base de données, ouvrez d’abord la base de données en mode transaction (msiOpenDatabaseModeTransact), création (msiOpenDatabaseModeCreate ou msiOpenDatabaseModeCreateDirect) ou direct (msiOpenDatabaseModeDirect). Après avoir apporté les modifications, appelez toujours la méthode Commit avant de fermer le descripteur de base de données. La méthode Commit vide toutes les mémoires tampons.

Appelez toujours la méthode Commit sur une base de données qui a été ouverte en mode direct (msiOpenDatabaseModeDirect ou msiOpenDatabaseModeCreateDirect) avant de fermer la base de données. Si vous ne le faites pas, vous risquez d’endommager la base de données.

Étant donné que la méthode OpenDatabase lance l’accès à la base de données, elle ne peut pas être utilisée avec une installation en cours d’exécution.

Si la méthode échoue, vous pouvez obtenir des informations d’erreur détaillées à l’aide de la méthode LastErrorRecord.

Configuration requise

Condition requise Valeur
Version
Windows Installer 5.0 sur Windows Server 2012, Windows 8, Windows Server 2008 R2 ou Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 sur Windows Server 2008 ou Windows Vista. Windows Installer sur Windows Server 2003 ou Windows XP
DLL
Msi.dll
IID
IID_IInstaller est défini comme 000C1090-0000-0000-C000-000000000046