Comment réparer MS Access Erreur d’exécution 3061: trop peu de paramètres. Attendu 1?

L’erreur d’exécution Microsoft Access 3061 se produit généralement lorsque l’utilisateur tente d’effectuer une requête ou une instruction SQL faisant référence au paramètre, mais qu’Access ne parvient pas à trouver un paramètre que l’utilisateur tente d’utiliser. Le message d’erreur indique “Run time error 3061: Too few parameters. Expected 1“. Cela peut être très ennuyeux car cela empêche les utilisateurs d’accéder à la base de données.

CAPTURE D’ÉCRAN DE L’ERREUR:

MS Access Erreur d'exécution 3061

Ainsi, si vous êtes également confronté à l’erreur ci-dessus, ne vous inquiétez pas. Avec ce guide exhaustif, vous pouvez corriger l’erreur MS Access 3061 en un rien de temps.

Alors, commençons…

Classé Excellent sur Trustpilot
Outil Gratuit de Réparation de Base de Données MS Access
Réparez les fichiers de base de données MDB et ACCDB corrompus et récupérez facilement les tables, les requêtes, les index et les enregistrements de base de données supprimés. Essayez maintenant!
Télécharger
En cliquant sur le bouton Télécharger ci-dessus et en installant Stellar Repair for Access (14.8 MB), je reconnais avoir lu et accepté le contrat de licence utilisateur final et la politique de confidentialité de ce site.

Que signifie trop peu de paramètres?

Lorsque l’erreur d’exécution 3061: Trop peu de paramètres se produit, cela signifie simplement que les requêtes ou les formulaires que vous essayez d’utiliser dans la syntaxe n’ont pas réussi à trouver le paramètre référencé dans votre requête.

En termes simples, cette erreur se produit souvent lorsque vous avez mal orthographié le champ ou le nom d’un paramètre dans votre requête ou formulaire. Cependant, de nombreuses raisons peuvent conduire à cette erreur, telles que :

  1. Nom du paramètre mal orthographié
  2. Paramètre manquant
  3. Mauvais nombre de paramètres
  4. Erreur de syntaxe SQL
  5. Type de données incorrect
  6. Problème dans la conception de la requête
  7. Base de données corrompue.

Lisez également: Erreur d’accès 2105: vous ne pouvez pas accéder à l’enregistrement spécifié

Solutions pour corriger l’erreur d’exécution 3061 de MS Access: trop peu de paramètres. Attendu 1

Essayez les méthodes étape par étape ci-dessous pour gérer l’erreur MS Access 3061.

Solution 1 – Modifiez votre requête

La fonction OpenRecordset n’a aucune méthode pour afficher une boîte de dialogue pour demander les entrées de l’utilisateur, comme le fait l’interface utilisateur si elle acquiert une telle erreur. Vous pouvez modifier votre requête pour utiliser des paramètres qui ne sont pas liés à un formulaire

yourTableAllocStart >= pAllocStart

and yourTableAllocEnd <= pAllocEnd

Ensuite, vous pouvez utiliser cette fonction pour acquérir un jeu d’enregistrements de cette requête.

Function GetQryAllocDebits(pAllocStart As String, pAllocEnd As String) As DAO.Recordset

    Dim db As DAO.Database

    Dim qdef As DAO.QueryDef

    Set db = CurrentDb

    Set qdef = db.QueryDefs(“qryAlloc_Debits”)

    qdef.Parameters.Refresh

    qdef.Parameters(“pAllocStart”).Value = pAllocStart

    qdef.Parameters(“pAllocEnd”).Value = pAllocEnd

    Set GetQryAllocDebits = qdef.OpenRecordset

End Function

L’inconvénient de cette procédure est que lorsque vous décrivez cela sur un formulaire qui y est lié, elle ne “remplit pas les blancs” vigoureusement pour vous.

Dans cette situation, vous pouvez joindre des formulaires qryAlloc_debts et échapper à toute clause dans une requête stockée, puis utiliser le filtre du formulaire pour construire votre clause Where. Dans cette illustration, vous pouvez utiliser la clause Where avec précision sur la façon dont vous l’avez imprimée.

Après cela, si vous souhaitez déverrouiller un jeu d’enregistrements, procédez comme suit:

Function GetQryAllocDebits(pAllocStart As String, pAllocEnd As String) As DAO.Recordset

    Dim qdef As DAO.QueryDef

    Set qdef = New DAO.QueryDef

    qdef.SQL = “Select * from qryAlloc_Debits where AllocStart >= pAllocStart and pAllocEnd <= pAllocEnd”

    qdef.Parameters.Refresh

    qdef.Parameters(“pAllocStart”).Value = pAllocStart

    qdef.Parameters(“pAllocEnd”).Value = pAllocEnd

    Set GetQryAllocDebits = qdef.OpenRecordset

End Function

Lors de l’ouverture d’une requête enregistrée contenant des paramètres dans le code, vous devez utiliser un objet DAO.Querydef et fournir le(s) paramètre(s) via la compilation des paramètres de substance Querydef.

Vous déballez ensuite le jeu d’enregistrements au moyen de la technique openrecordset de l’objet querydef en remplacement du schéma de jeu d’enregistrements ouvert de l’objet de base de données.

Je ne sais pas si ce que j’ai ajouté à votre code fonctionnera tel quel, mais cela montre ce qui doit être fait pour configurer l’objet querydef.

Solution 2 – Vérifiez les noms des paramètres pour corriger l’erreur d’exécution MS Access 3061: trop peu de paramètres

Un nom de paramètre incorrect dans la requête ou la syntaxe peut déclencher ce message d’erreur ennuyeux. Dans une telle situation, vous devez vérifier les noms des paramètres. Si un nom incorrect est trouvé, corrigez-le dans le code ou l’instruction.

Lisez également: Access ne peut pas ajouter tous les enregistrements dans l’erreur de requête d’ajout

Solution 3 – Vérifier les noms des tables et des champs

1.) Vous oublierez peut-être de placer le guillemet simple (‘) autour de la variable dans la cause Where dans la requête.

Par exemple:

Si la structure de ma table est

CREATE TABLE Persons

(

PersonID int,

LastName varchar(255),

FirstName varchar(255),

Address varchar(255),

City varchar(255)

);

La requête qui autorise une telle erreur est un peu comme

Set rs = dbs.OpenRecordset(“Select * From Persons Where FirstName = ” & p_firstname & “;”, dbOpenSnapshot)

Pour résoudre ce problème, emportez le héros, qui est un code unique (‘), pour vous aider comme ceci:

Set rs = dbs.OpenRecordset(“Select * From Persons Where FirstName = ‘” & p_firstname & “‘;”, dbOpenSnapshot)

2.) Le champ du tableau est manquant ou mal orthographié. Vous devez vérifier votre requête et vous assurer que chaque champ de la requête est correctement orthographié ou existe dans le tableau.

D’après la structure du tableau ci-dessus, la requête qui pourrait générer cette erreur est:

Set rs = dbs.OpenRecordset(“Select First_Name, Last_Name From Persons Where PersonID = 3;”, dbOpenSnapshot)

Pour résoudre ce problème, corrigez les champs de la requête comme ceci:

Set rs = dbs.OpenRecordset(“Select FirstName, LastName From Persons Where PersonID = 3;”, dbOpenSnapshot)

Solution 4- Réparez votre base de données corrompue

Comme mentionné dans la section sur les causes, la corruption dans la base de données Access peut également entraîner un manque de paramètres openrecordset. 1 erreur attendue. Cependant, vous pouvez utiliser “Compact and Repair” – un utilitaire Access intégré pour réparer vos bases de données Access corrompues.

Suivez les étapes ci-dessous pour exécuter cet outil :

  • Assurez-vous de fermer le fichier de base de données concerné.
  • Ensuite, ouvrez l’application Access. Accédez à la page Modèles, puis cliquez sur Base de données vierge.
  • Maintenant, sélectionnez Fichier >> cliquez sur Fermer >> Outils de base de données.
  • Après cela, cliquez sur Compacter et réparer la base de données.

MS Access Erreur d'exécution 3061

  • Sous la boîte de dialogue “Base de données à compacter à partir de“, sélectionnez la base de données que vous souhaitez réparer.
  • Cliquez sur Compacter.

MS Access Erreur d'exécution 3061

Désormais, la base de données compactée et réparée sera automatiquement enregistrée à un emplacement similaire où une base de données réelle est stockée.

Solution recommandée pour corriger Openrecordset Trop peu de paramètres attendus 1 erreur

Si l’outil Compact & Repair ne parvient pas à réparer la base de données, optez pour une solution avancée Access Réparation Outil. Il est destiné à réparer les fichiers .ACCDB et .MDB gravement corrompus ainsi qu’à récupérer les objets de la base de données tels que les enregistrements, les tables, les requêtes, les macros, les index, les modules, etc. De plus, il peut réparer les formulaires et modules protégés par mot de passe.

* En cliquant sur le bouton Télécharger ci-dessus et en installant Stellar Repair for Access (14.8 MB), je reconnais avoir lu et accepté le contrat de licence utilisateur final et la politique de confidentialité de ce site.

Étapes pour réparer la corruption de la base de données Access

access-shot-fr-1
access-select-database-fr-2
access-repairing-fr-3
access-repairing-completed-fr-4
access-preview-fr-5
access-save-location-fr-6
access-saving-fr-7
previous arrow
next arrow

Résumer

À partir des 2 exemples donnés ci-dessus, j’espère que vous serez en mesure de corriger l’erreur d’exécution “3061” de MS Access. Sinon, je vous recommanderais simplement de faire appel aux experts les plus compétents MS Access Réparation Et Récupération Outil. Cet outil de réparation est très important dans la résolution des erreurs et des bogues liés à MS Access et dans la restauration de la base de données dans un tout nouveau fichier sans aucune difficulté.

Alors vous pouvez essayer ça….!

rencontrez toujours des problèmes? Fix les avec Stellar réparation pour Access:

Ce logiciel assure la réparation et la récupération en toute transparence de la base de données ACCDB et MDB. Il restaure tous les objets, y compris les tables, les rapports, les requêtes, les enregistrements, les formulaires et les index ainsi que les modules, les macros, etc. Fix problèmes de Microsoft Access maintenant en 3 étapes faciles:

  1. Télécharger Stellar Access base de données réparation outil évalué Excellent sur Cnet.
  2. Cliquez sur l'option Parcourir et Rechercher pour localiser la base de données Access corrompue.
  3. Cliquez sur le bouton Réparer pour réparer et prévisualiser les objets de la base de données.

Pearson Willey est un rédacteur de contenu de site Web et un planificateur de contenu détaillé. En plus de cela, il est également un lecteur assidu. Par conséquent il sait très bien rédiger un contenu engageant pour les lecteurs. Lécriture est pour lui un avantage croissant. Il amours explorer ses connaissances on MS Access et partage technologie blogs.