Erreur 3027

gchery Messages postés 6 Date d'inscription mardi 7 octobre 2003 Statut Membre Dernière intervention 26 janvier 2007 - 25 janv. 2007 à 16:24
Dolphin Boy Messages postés 630 Date d'inscription vendredi 5 mai 2006 Statut Membre Dernière intervention 17 février 2007 - 26 janv. 2007 à 18:17
VB6

je fait une requete sql avec 2 inner join .

sql = "SELECT telephone.tele, telephone.numnom, telephone.suspendu,utilisateur.numsociete, utilisateur.nom,societe.société FROM (telephone INNER JOIN "
sql = sql & "utilisateur ON telephone.numnom=utilisateur.numnom) INNER JOIN societe on utilisateur.numsociete=societe.numsociete ORDER BY utilisateur.nom"
                      
Set matable = mabase.OpenRecordset(sql, dbOpenDynaset)
matable.MoveLast
matable.MoveFirst

quand je fais a = matable.RecordCount j'obtiens 221 enregistrement, mais lorsque je fais matable.edit j'onteins l'erreur 3027 table en lecture seulement.

je sèche depuis quelques heures .

qqu'un peut t-il me depanner

merci d'avance

gchery

5 réponses

cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
25 janv. 2007 à 18:31
 Bonsoir,

Peut-être "matable.EditMode" ....

Objet_Recordset.EditMode = EditModeEnum
retourne le statut de modification de l'enregistrement en cours.
Objet_Recordset.RecordCount = Nombre
retourne le nombre en cours des enregistrements présents dans un objet Recordset.

http://www.laltruiste.com/coursado/objet_recordset.html' target='_blank'>http://www.laltruiste.com/document.php?url=http://www.laltruiste.com/coursado/objet_recordset.html

jean-marc
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
25 janv. 2007 à 19:14
Re,

A quelle valeur, la constante "dbOpenDynaset",  est-elle initialisée ???

Tous les renseignements sont dans le lien du post précédent.

'Déclaration des Constantes
'
'Valeurs de Type Curseur
'-----------------------
Const adOpenForwardOnly = 0
Const adOpenKeyset = 1
Const adOpenDynamic = 2
Const adOpenStatic = 3
'
'Valeurs de Type Verrou
'----------------------
Const adLockReadOnly = 1
Const adLockPessimistic = 2
Const adLockOptimistic = 3
Const adLockBatchOptimistic = 4

jean-marc
0
Dolphin Boy Messages postés 630 Date d'inscription vendredi 5 mai 2006 Statut Membre Dernière intervention 17 février 2007
25 janv. 2007 à 20:17
Salut,

JMO > Apparemment, c'est du DAO

gchery > Tu n'aurais pas ouvert une des 3 tables en lecture seule quelque part avant ?
0
gchery Messages postés 6 Date d'inscription mardi 7 octobre 2003 Statut Membre Dernière intervention 26 janvier 2007
26 janv. 2007 à 11:21
merci pour les réponses

non je n'ai pas ouvert les tables en lecture seulement
je ne comprends pas la réponse "A quelle valeur, la constante "dbOpenDynaset",  est-elle initialisée ???"

je vais essayer de contourner l'obstacle en creant des requetes sur me table en supprimant INNER JOIN

merci encore

gchery
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Dolphin Boy Messages postés 630 Date d'inscription vendredi 5 mai 2006 Statut Membre Dernière intervention 17 février 2007
26 janv. 2007 à 18:17
C'est peut-être un problème de bibliothèque.
Comme tu utilises DAO, il faut savoir que cette façon de faire n'est plus supportée par Microsoft (elle s'est arrêtée à la version 3.6) et qu'on ne peut l'utiliser pour des bases Access de version supérieure à 2000.
Qu'as tu coché comme référence dans VB6 et quelle est la version de la base Access ?

PS : JMO te répondait sur une base ADO et non DAO comme ce que tu utilises.
0
Rejoignez-nous