Partager via


Méthode QueryDef.OpenRecordset (DAO)

S’applique à : Access 2013, Office 2013

Crée un objet Recordset et l’ajoute à la collection Recordsets.

Syntaxe

expression . OpenRecordset(Type, Options, LockEdit)

expression Variable représentant un objet QueryDef.

Paramètres

Nom

Obligatoire/facultatif

Type de données

Description

Type

Facultatif

Variant

Constante RecordsetTypeEnum qui indique le type de Recordset à ouvrir.

REMARQUE : si vous ouvrez un objet Recordset dans un espace de travail Microsoft Access et que vous n’indiquez aucun type, OpenRecordset crée un objet Recordset de type table, si possible. If you specify a linked table or query, OpenRecordset creates a dynaset-type Recordset.

Options

Facultatif

Variant

Combinaison de constantes RecordsetOptionEnum qui indiquent les caractéristiques du nouveau Recordset.

REMARQUE : dbConsistent et dbInconsistent s’excluent mutuellement, et l’utilisation de ces deux constantes peut entraîner une erreur. Supplying a lockedits argument when options uses the dbReadOnly constant also causes an error.

LockEdit

Facultatif

Variant

Constante LockTypeEnum qui détermine le verrouillage du Recordset.

REMARQUE : vous pouvez utiliser dbReadOnly dans l’argument options ou dans l’argument lockededits, mais pas dans les deux. Si vous l’utilisez dans les deux arguments, une erreur d’exécution se produit.

Valeur renvoyée

Recordset

Remarques

Vous devez également utiliser la constante dbSeeChanges si vous ouvrez un objet Recordset dans un espace de travail ODBC connecté à un moteur de base de données Microsoft Access dans une table Microsoft SQL Server 6.0 (ou version ultérieure) possédant une colonne IDENTITY, autrement une erreur peut être générée.

L'ouverture de plusieurs objets Recordset dans une source de données ODBC peut entraîner un échec car la connexion est occupée par un appel d'objet OpenRecordset préalable. Pour contourner ce problème, vous pouvez renseigner totalement l'objet Recordset à l'aide de la méthode MoveLast dès que l'objet Recordset est ouvert.

Si vous fermez un objet Recordset avec la méthode Close, l'objet est automatiquement supprimé de la collection Recordsets.

Remarque

Si source fait référence à une instruction SQL composée d’une chaîne concaténée avec une valeur non entière, et que les paramètres système spécifient une valeur non américaine. Caractère décimal tel qu’une virgule (par exemple, strSQL = « PRICE >  » & lngPrice et lngPrice = 125,50), une erreur se produit lorsque vous essayez d’ouvrir l’objet Recordset. Cela s'explique par le fait que lors de la concaténation, le nombre est converti en chaîne à l'aide du caractère décimal par défaut du système et le langage SQL n'accepte que les caractères décimaux de la notation américaine.