Funzione JetAttachDatabase2
Si applica a: Windows | Windows Server
Funzione JetAttachDatabase2
La funzione JetAttachDatabase2 collega un file di database da utilizzare con un'istanza di database e specifica una dimensione massima per tale database. Per usare il database, sarà necessario aprirlo successivamente con JetOpenDatabase.
JET_ERR JET_API JetAttachDatabase2(
__in JET_SESID sesid,
__in const tchar* szFilename,
__in const unsigned long cpgDatabaseSizeMax,
__in JET_GRBIT grbit
);
Parametri
sesid
Contesto della sessione di database che verrà usato per la chiamata API.
szFilename
Nome del database da collegare.
cpgDatabaseSizeMax
Dimensioni massime, nelle pagine del database, per il database. La dimensione predefinita della pagina del database è di 4 kilobyte, che può essere modificata usando la funzione JetSetSystemParameter prima di creare un database.
Se si passa zero, non è previsto alcun limite massimo applicato dal motore di database.
grbit
Gruppo di bit che contengono le opzioni da usare per questa chiamata, che includono zero o più dei seguenti elementi:
Valore |
Significato |
---|---|
JET_bitDbDeleteCorruptIndexes |
Se JET_paramEnableIndexChecking è stato impostato, tutti gli indici sui dati Unicode verranno eliminati. Per altre informazioni, vedere le sezione Osservazioni. |
JET_bitDbDeleteUnicodeIndexes |
Tutti gli indici sui dati Unicode verranno eliminati, indipendentemente dall'impostazione di JET_paramEnableIndexChecking. Per altre informazioni, vedere le sezione Osservazioni. |
JET_bitDbReadOnly |
Impedisce modifiche al database. |
JET_bitDbUpgrade |
Riservato per utilizzi futuri. |
Valore restituito
La funzione restituisce uno dei codici di errore JET_ERR . Di seguito sono riportati i valori restituiti più di frequente. Per un elenco completo degli errori per questa API, vedere Extensible Storage Engine Error Codes (Codici di errore del motore di archiviazione estendibile).
Codice restituito |
Descrizione |
---|---|
JET_errSuccess |
Operazione riuscita. |
JET_errBackupInProgress |
Il collegamento di un database non è consentito durante un backup. |
JET_errDatabaseFileReadOnly |
Il file di database specificato da szFilename deve essere scrivibile. L'attributo Read-Only non deve essere impostato e il processo in esecuzione deve disporre di privilegi sufficienti per scrivere nel file. |
JET_errDatabaseInUse |
Il file di database è già aperto da un altro processo. |
JET_errDatabaseInvalidPath |
È stato specificato un percorso non valido in szFilename. szFilename deve essere diverso da NULL e fare riferimento a un percorso valido. |
JET_errDatabaseSharingViolation |
Il file di database è già stato collegato da una sessione diversa. |
JET_errFileNotFound |
Il file specificato in szFilename non esiste. |
JET_errPrimaryIndexCorrupted |
Si è verificato un errore con l'indice primario. Può trattarsi di un danneggiamento fisico, ad esempio il danneggiamento del disco o della memoria. Può anche essere restituito quando si collega un database per l'ultima modifica in un sistema operativo precedente e l'indice primario si trova su una colonna con dati Unicode. Per altre informazioni sugli indici sui dati Unicode, vedere le osservazioni. |
JET_errSecondaryIndexCorrupted |
Si è verificato un errore con un indice secondario. Può trattarsi di un danneggiamento fisico, ad esempio il danneggiamento del disco o della memoria. Può anche essere restituito quando si collega un database per l'ultima modifica in un sistema operativo precedente e un indice secondario si trova su una colonna con dati Unicode. Per altre informazioni sugli indici sui dati Unicode, vedere le osservazioni. Gli indici secondari vengono ricompilati completamente quando un database viene deframmentato con un'utilità offline usando il comando seguente: esentutl -d. |
JET_errTooManyAttachedDatabases |
È possibile collegare solo un numero finito di database per ogni istanza. Il limite è attualmente di sette database per istanza. |
JET_wrnDatabaseAttached |
Avviso non irreversibile che indica che il file di database è già stato allegato da questa sessione. |
Commenti
Il file di database viene scollegato usando JetDetachDatabase o JetDetachDatabase2.
Per le osservazioni, vedere JetAttachDatabase .
Requisiti
Requisito | Valore |
---|---|
Client |
Richiede Windows Vista, Windows XP o Windows 2000 Professional. |
Server |
Richiede Windows Server 2008, Windows Server 2003 o Windows 2000 Server. |
Intestazione |
Dichiarato in Esent.h. |
Libreria |
Usare ESENT.lib. |
DLL |
Richiede ESENT.dll. |
Unicode |
Implementato come JetAttachDatabase2W (Unicode) e JetAttachDatabase2A (ANSI). |
Vedere anche
File del motore di archiviazione estendibile
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetAttachDatabase
JetCreateDatabase
JetOpenDatabase
JetSetSystemParameter