JetSetSystemParameter fonction)

S’applique à : Windows | Windows Serveurs

JetSetSystemParameter fonction)

La fonction JetSetSystemParameter est utilisée pour définir les nombreux paramètres de configuration du moteur de base de données.

    JET_ERR JET_API JetSetSystemParameter(
      __in_out_opt  JET_INSTANCE* pinstance,
      __in          JET_SESID sesid,
      __in          unsigned long paramid,
      __in          JET_API_PTR lParam,
      __in_opt      JET_PCSTR szParam
    );

Paramètres

pinstance

Spécifie l’instance à utiliser pour cet appel.

Windows 2000 : pour Windows 2000, ce paramètre est ignoré et doit toujours avoir la valeur NULL.

Windows XP : pour Windows XP et versions ultérieures, ce paramètre est quelque peu surchargé. si le moteur fonctionne en mode hérité (Windows mode de compatibilité 2000) alors qu’une seule instance est prise en charge, ce paramètre peut avoir la valeur NULL ou peut contenir l’instance réelle retournée par JetInit. Dans les deux cas, tous les paramètres système sont lus à partir de cette instance. Si le moteur fonctionne en mode multi-instance, ce paramètre peut avoir la valeur null ou être un pointeur vers une instance créée à l’aide de JetInit ou JetCreateIndex. Lorsque ce paramètre a la valeur null , le paramètre global du système (ou par défaut) est lu. Lorsque ce paramètre est une instance, le paramètre système défini pour cette instance est Read.

Même s’il s’agit d’un paramètre de sortie techniquement, cette API ne modifie jamais le contenu de la mémoire tampon fournie.

sesid

Spécifie la session à utiliser pour cet appel.

Lorsqu’il est spécifié, l’instance spécifiée est ignorée et l’instance associée à la session est utilisée.

paramid

ID du paramètre système qui sera défini. Pour obtenir la liste complète des paramètres système et leurs propriétés, consultez paramètres système .

lParam

Fournit la valeur à définir pour le paramètre système sélectionné si ce paramètre système est d’un type entier.

szParam

Fournit la valeur du paramètre système sélectionné si ce paramètre système est de type chaîne.

Valeur renvoyée

Cette fonction retourne le type de données JET_ERR avec l’un des codes de retour suivants. pour plus d’informations sur les erreurs ESE possibles, consultez erreurs du moteur de Stockage Extensible et paramètres de gestion des erreurs.

Code de retour

Description

JET_errSuccess

L’opération s’est terminée avec succès.

Windows Vista : sur Windows Vista et les versions ultérieures, la réussite peut être retournée sans modification de la valeur du paramètre du système. Pour plus d’informations, consultez le paramètre système JET_paramEnableAdvanced dans la rubrique méta-paramètres .

JET_errAlreadyInitialized

L’instance a été initialisée à l’aide d’un appel à JetInit et cette opération ne peut pas être exécutée en conséquence. Cela peut se produire pour JetSetSystemParameter quand une tentative est faite pour configurer un paramètre système après qu’une modification de sa valeur ne peut pas affecter l’état du moteur de base de données.

JET_errClientRequestToStopJetService

Il n’est pas possible de terminer l’opération, car toute activité sur l’instance associée à la session a été interrompue suite à un appel à JetStopService.

JET_errIndexTuplesInvalidLimits

Les paramètres d’index de tuple spécifiés ne sont pas conformes. Cette erreur peut être retournée par JetSetSystemParameter uniquement lorsque vous définissez JET_paramIndexTuplesLengthMin, JET_paramIndexTuplesLengthMaxou JET_paramIndexTuplesToIndexMax sur une valeur non conforme.

Windows XP et Windows Server 2003 : cela peut se produire uniquement sur Windows XP et Windows Server 2003.

JET_errInitInProgress

Il n’est pas possible de terminer l’opération, car l’instance associée à la session est en cours d’initialisation.

JET_errInstanceUnavailable

Il n’est pas possible de terminer l’opération, car l’instance associée à la session a rencontré une erreur irrécupérable qui requiert que l’accès à toutes les données soit révoqué pour protéger l’intégrité de ces données.

Windows XP : cette erreur est renvoyée uniquement par Windows XP et les versions ultérieures.

JET_errInvalidParameter

L’un des paramètres fournis contenait une valeur inattendue ou contenait une valeur qui n’a pas de sens lorsqu’elle était associée à la valeur d’un autre paramètre. Cela peut se produire pour JetSetSystemParameter dans les cas suivants :

  • L’ID de paramètre système spécifié n’est pas valide ou n’est pas pris en charge.

  • Une tentative a été effectuée pour définir un paramètre système à valeur de chaîne avec une chaîne dont la longueur était en dehors de la plage autorisée pour le paramètre.

  • Une tentative a été effectuée pour définir un paramètre système à valeur de chaîne avec un chemin d’accès de fichier où la longueur de sa représentation de chemin d’accès absolu était en dehors de la plage autorisée pour ce paramètre.

    Windows Vista : cela peut se produire uniquement sur Windows Vista et versions ultérieures.

  • Une tentative a été effectuée pour définir un paramètre système de valeur entière avec un entier qui se trouvait en dehors de la plage autorisée pour le paramètre.

  • Une tentative a été effectuée pour définir JET_paramUnicodeIndexDefault avec un pointeur deJET_UNICODEINDEX null, un LCID non valide ou un jeu d’indicateurs LCMapString non pris en charge.

    Windows Vista : cela peut se produire uniquement sur Windows Vista et versions ultérieures.

  • Impossible de définir le paramètre système spécifié, car il est en lecture seule.

  • Une tentative de définition d’un paramètre système a été effectuée après l’appel de JetInit , le moteur de base de données est en mode d’instance unique et aucune session n’a été spécifiée.

    Windows XP et Windows Server 2003 : cela peut se produire uniquement sur Windows XP et Windows Server 2003.

  • Le paramètre système spécifié est global uniquement et une tentative a été effectuée pour définir une valeur spécifique à une instance pour ce paramètre système.

    Windows XP et Windows Server 2003 : cela peut se produire uniquement sur Windows XP et Windows Server 2003.

  • Le paramètre système spécifié est par instance uniquement et une tentative de définition de la valeur globale pour ce paramètre système a été effectuée.

    Windows XP et Windows Server 2003 : cela peut se produire uniquement sur Windows XP et Windows Server 2003.

JET_errInvalidPath

Le chemin d’accès au système de fichiers spécifié n’est pas valide. Cette erreur peut être retournée par JetSetSystemParameter uniquement lors de la définition des paramètres système qui représentent les chemins d’accès du système de fichiers. Par exemple, JET_paramSystemPath peut retourner cette erreur.

JET_errNotInitialized

Impossible de terminer l’opération, car l’instance associée à la session n’a pas encore été initialisée.

JET_errRestoreInProgress

Il n’est pas possible de terminer l’opération, car une opération de restauration est en cours sur l’instance associée à la session.

JET_errTermInProgress

Il n’est pas possible de terminer l’opération, car l’instance associée à la session est en cours d’arrêt.

JET_errInvalidSesid

Le descripteur de session n’est pas valide ou fait référence à une session fermée.

Cette erreur n’est pas retournée dans toutes les circonstances. Les handles ne sont validés qu’à titre d’effort optimal.

JET_errInvalidInstance

Le handle d’instance n’est pas valide ou fait référence à une instance qui a été arrêtée.

Cette erreur n’est pas retournée dans toutes les circonstances. Les handles ne sont validés qu’à titre d’effort optimal.

Windows Vista : cette erreur est renvoyée uniquement par Windows Vista et les versions ultérieures.

En cas de réussite, le paramètre du paramètre système est défini sur la valeur fournie.

En cas d’échec, le paramètre du paramètre système reste inchangé.

Remarques

JetSetSystemParameter effectue une tâche médiocre de validation du paramètre choisi pour chaque paramètre système. Vous devez veiller à ne pas compter sur cette validation pour appliquer les bons paramètres. Veuillez prêter une attention particulière à la description de chaque paramètre système et suivez ces instructions pour un paramètre système correct.

Il existe un ensemble de paramètres système qui doivent toujours être définis pour garantir que le moteur de base de données fonctionne comme prévu. Plus précisément, tous les paramètres système qui affectent la disposition physique des fichiers utilisés par le moteur de base de données doivent toujours être définis. Pour plus d’informations, consultez paramètres système.

Chaque paramètre système a une valeur par défaut. Ces valeurs par défaut ont évolué au fil du temps et sont relativement arbitraires. Il est fortement recommandé qu’une application évalue toutes les valeurs par défaut pour s’assurer qu’elles sont appropriées. S’ils ne sont pas appropriés, ils doivent être configurés par l’application. Cela est important, car un grand nombre de ces paramètres peuvent avoir un impact considérable sur la fiabilité, les performances et l’utilisation des ressources du moteur de base de données.

Configuration requise

Condition requise Valeur

Client

requiert Windows Vista, Windows XP ou Windows 2000 Professional.

Serveur

nécessite Windows server 2008, Windows server 2003 ou Windows 2000 server.

En-tête

Déclaré dans esent. h.

Bibliothèque

Utilisez ESENT. lib.

DLL

Requiert ESENT.dll.

Unicode

Implémenté en tant que JetSetSystemParameterW (Unicode) et JetSetSystemParameterA (ANSI).

Voir aussi

JET_API_PTR
JET_ERR
JET_INSTANCE
JET_SESID
JetCreateInstance
JetGetSystemParameter
JetInit
Paramètres système