IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Data Type Mismatch In Criteria Expression


Sujet :

Access

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 161
    Points : 44
    Points
    44
    Par défaut Data Type Mismatch In Criteria Expression
    Bonjour a tous, je suis saturé de Access! j'ai encore une requete qui me pose probleme et qui me genere le type d'erreur "Data type mismatch..."
    J'ai deja eu cette erreur et j'avais pallier au pb en modifiant le type de champs en text car visiblement c etait les CDate qu il aimait pas kan j avais un type number a convertir en Date/time

    Bref là j'ai encore un soucis mais je vois pas ou cela pe etre apres mainte test alors si qqun pe m eclairer il serai hyper baleze de trouver, j en ai deja epuisé 1 expert qui a pas trop su....:-(

    alors HeLP !!

    voici la requete:

    INSERT INTO BasePamRecon ( PaNum, [Begin], Xbegin, [End], Xend, CpnType, BaseRate, XBaseRate, Rate, XRate, Cur, Xcur, Amount, Xamount )


    SELECT DISTINCT

    LV1FP901_ICPAM.PADLNO AS PaNum,

    CDate([PASTMM] & "/" & [PASTDD] & "/" & [PASTYY]) AS [Begin],

    No AS Xbegin,

    IIf([cpntype]=70,IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAMTMM] & "/" & [PAMTDD] & "/" & [PAMTYY])),

    IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAENMM] & "/" & [PAENDD] & "/" & [PAENYY]))) AS [End],

    No AS Xend,

    Chr([CpnType]) AS Expr1,

    IIf([CPnTYPE]=86,[VrBase],IIf([cpntype]=65,"ADJ RATE","FIXED RATE")) AS BaseRate,

    No AS XBaseRate,

    IIf([mhfsttrn].[invmgr]="TR",Val(Left([PABASR],9))+(Val([VrAdjustment])/100),Val(Left([PABASR],9))) AS Rate,

    No AS XRate,

    LV1FP901_ICPAM.PACCY AS Cur,

    No AS Xcur,

    Val([PAPAMT]) AS Amount,

    No AS Xamount

    FROM (((LV1FP901_ICPAM INNER JOIN (mhfsttrn INNER JOIN mhfsisu ON mhfsttrn.Cusip = mhfsisu.Cusip) ON LV1FP901_ICPAM.PADLNO = mhfsttrn.TaNum) INNER JOIN mhfshdr ON mhfsttrn.Portfolio = mhfshdr.Portfolio) INNER JOIN MajorCodes ON mhfsisu.MajorType = MajorCodes.Code) INNER JOIN pmcshflw ON mhfsisu.CashFlowID = pmcshflw.CashFlowID

    WHERE (((Right(Left([mhfshdr].[ShortName],1),3) & "000")<>1000) AND ((LV1FP901_ICPAM.PADLST)="PA") AND ((MajorCodes.TranType)="SEC"))
    ORDER BY LV1FP901_ICPAM.PADLNO, Val([PAPAMT]);



    Et Concernant le format des champs de la table que j'alimente 'BasePam Recon':

    Panum: Number
    MuNum: Number
    Begin: Date/Time
    XBegin: Yes/No
    End: Date/time
    XEnd: Yes/No
    CpnType:Text
    BaseRate: Text
    XBaseRate: Yes/No
    Rate:Number
    XRate:Yes/No
    Cur: Text
    XCur:Yes/no
    Amout: Number
    WAmont: Yes/No

  2. #2
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 74
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par jam92400
    Bonjour a tous, je suis saturé de Access! j'ai encore une requete qui me pose probleme et qui me genere le type d'erreur "Data type mismatch..."
    J'ai deja eu cette erreur et j'avais pallier au pb en modifiant le type de champs en text car visiblement c etait les CDate qu il aimait pas kan j avais un type number a convertir en Date/time

    Bref là j'ai encore un soucis mais je vois pas ou cela pe etre apres mainte test alors si qqun pe m eclairer il serai hyper baleze de trouver, j en ai deja epuisé 1 expert qui a pas trop su....:-(

    alors HeLP !!

    voici la requete:

    INSERT INTO BasePamRecon ( PaNum, [Begin], Xbegin, [End], Xend, CpnType, BaseRate, XBaseRate, Rate, XRate, Cur, Xcur, Amount, Xamount )


    SELECT DISTINCT

    LV1FP901_ICPAM.PADLNO AS PaNum,

    CDate([PASTMM] & "/" & [PASTDD] & "/" & [PASTYY]) AS [Begin],

    No AS Xbegin,

    IIf([cpntype]=70,IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAMTMM] & "/" & [PAMTDD] & "/" & [PAMTYY])),

    IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAENMM] & "/" & [PAENDD] & "/" & [PAENYY]))) AS [End],

    No AS Xend,

    Chr([CpnType]) AS Expr1,

    IIf([CPnTYPE]=86,[VrBase],IIf([cpntype]=65,"ADJ RATE","FIXED RATE")) AS BaseRate,

    No AS XBaseRate,

    IIf([mhfsttrn].[invmgr]="TR",Val(Left([PABASR],9))+(Val([VrAdjustment])/100),Val(Left([PABASR],9))) AS Rate,

    No AS XRate,

    LV1FP901_ICPAM.PACCY AS Cur,

    No AS Xcur,

    Val([PAPAMT]) AS Amount,

    No AS Xamount

    FROM (((LV1FP901_ICPAM INNER JOIN (mhfsttrn INNER JOIN mhfsisu ON mhfsttrn.Cusip = mhfsisu.Cusip) ON LV1FP901_ICPAM.PADLNO = mhfsttrn.TaNum) INNER JOIN mhfshdr ON mhfsttrn.Portfolio = mhfshdr.Portfolio) INNER JOIN MajorCodes ON mhfsisu.MajorType = MajorCodes.Code) INNER JOIN pmcshflw ON mhfsisu.CashFlowID = pmcshflw.CashFlowID

    WHERE (((Right(Left([mhfshdr].[ShortName],1),3) & "000")<>1000) AND ((LV1FP901_ICPAM.PADLST)="PA") AND ((MajorCodes.TranType)="SEC"))
    ORDER BY LV1FP901_ICPAM.PADLNO, Val([PAPAMT]);



    Et Concernant le format des champs de la table que j'alimente 'BasePam Recon':

    Panum: Number
    MuNum: Number
    Begin: Date/Time
    XBegin: Yes/No
    End: Date/time
    XEnd: Yes/No
    CpnType:Text
    BaseRate: Text
    XBaseRate: Yes/No
    Rate:Number
    XRate:Yes/No
    Cur: Text
    XCur:Yes/no
    Amout: Number
    WAmont: Yes/No



    aaaaaaaaaaaaaaaaaaaaaaa.... c koi ce machin ????

    Insert into ---> F1 :
    INSERT INTO cible [(champ1[, champ2[, ...]])] [IN basededonnéesexterne]
    SELECT [source.]champ1[, champ2[, ...]
    FROM expressiontable

    Requête Ajout avec un seul enregistrement :

    INSERT INTO cible [(champ1[, champ2[, ...]])]
    VALUES (valeur1[, valeur2[, ...])


    puis insert into avec un select distinct.... je comprends pourquoi ca plante

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 161
    Points : 44
    Points
    44
    Par défaut re
    Merci pour ta reponse Pogny mais je comprend pas ce que tu ve dire

    car cette requete fonctionnait avant et puis j ai testé en enlevant le distinct et le pb reste entier :-(

  4. #4
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 74
    Points : 79
    Points
    79
    Par défaut
    pourquoi tu mets un select distinct ?

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 161
    Points : 44
    Points
    44
    Par défaut re
    car je pe avoir plusieurs numero de contrat enfin Bref j'ai pu trouver d ou provient l erreur

    deja dans la clause where il fallaisque je mette <>"1000" et non pas <>1000 car c est un format Text

    donc mainternant l'erreur est dans cette instruction:

    IIf([cpntype]=70,IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAMTMM] & "/" & [PAMTDD] & "/" & [PAMTYY])),
    IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAENMM] & "/" & [PAENDD] & "/" & [PAENYY]))) AS [End],

  6. #6
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 74
    Points : 79
    Points
    79
    Par défaut
    ben meme erreur je crois:
    CpnType:Text

    IIf([cpntype]=70 ----> "70"



    non?

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    si est du texte cpntype '70'

  8. #8
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 161
    Points : 44
    Points
    44
    Par défaut re
    oui celle là je l'avais vu je l vais corrigé aussi en "70"

    mais le pb reste encore

    et chose etrange j'ai enlevé le "Distinct" pour voir ce que ca fait et là en fait il me met une erreur differente :

    Microsoft can't append all the records in the append query.

    MS Access Set 395 files(s) to Null due to a type conversion failure, and didn't add 0 record(s) to the table due to a key violation, 0 record(s) due to lock violation......



    une idée ?

    Pogny je crois ke t es sur la bonne voie car sans le distinct on dirai que ca s ameliore...

  9. #9
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    74
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 74
    Points : 79
    Points
    79
    Par défaut
    Citation Envoyé par jam92400
    0 record(s) to the table due to a key violation, 0 record(s) due to lock violation......
    ya tout les droits lecture/ecriture sur ta table?

  10. #10
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 161
    Points : 44
    Points
    44
    Par défaut
    oui tout a fait g tt les droit :-(

  11. #11
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 161
    Points : 44
    Points
    44
    Par défaut Toujours pas resolu : Datatype mismatch in criteria expression
    Bonjour,

    Personne n ' a encore reussi a me sortir de pb qui a l air complexe mais je suis sur que ce doit etre un truc tt bete...:-)

    enfin voilà quelqu un pourrai me dire ce qui cloche dans l'instruction en rouge car c'est là d 'ou vient le pb !

    Bonjour a tous, je suis saturé de Access! j'ai encore une requete qui me pose probleme et qui me genere le type d'erreur "Data type mismatch..."
    J'ai deja eu cette erreur et j'avais pallier au pb en modifiant le type de champs en text car visiblement c etait les CDate qu il aimait pas kan j avais un type number a convertir en Date/time

    Bref là j'ai encore un soucis mais je vois pas ou cela pe etre apres mainte test alors si qqun pe m eclairer il serai hyper baleze de trouver, j en ai deja epuisé 1 expert qui a pas trop su....:-(

    alors HeLP !!

    voici la requete:

    INSERT INTO BasePamRecon ( PaNum, [Begin], Xbegin, [End], Xend, CpnType, BaseRate, XBaseRate, Rate, XRate, Cur, Xcur, Amount, Xamount )


    SELECT DISTINCT

    LV1FP901_ICPAM.PADLNO AS PaNum,

    CDate([PASTMM] & "/" & [PASTDD] & "/" & [PASTYY]) AS [Begin],

    No AS Xbegin,

    IIf([cpntype]=70,IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAMTMM] & "/" & [PAMTDD] & "/" & [PAMTYY])),
    IIf([PAMTMM]>12,CDate("01" & "/" & "01" & "/" & "2045"),CDate([PAENMM] & "/" & [PAENDD] & "/" & [PAENYY]))) AS [End],




    No AS Xend,

    Chr([CpnType]) AS Expr1,

    IIf([CPnTYPE]=86,[VrBase],IIf([cpntype]=65,"ADJ RATE","FIXED RATE")) AS BaseRate,

    No AS XBaseRate,

    IIf([mhfsttrn].[invmgr]="TR",Val(Left([PABASR],9))+(Val([VrAdjustment])/100),Val(Left([PABASR],9))) AS Rate,

    No AS XRate,

    LV1FP901_ICPAM.PACCY AS Cur,

    No AS Xcur,

    Val([PAPAMT]) AS Amount,

    No AS Xamount

    FROM (((LV1FP901_ICPAM INNER JOIN (mhfsttrn INNER JOIN mhfsisu ON mhfsttrn.Cusip = mhfsisu.Cusip) ON LV1FP901_ICPAM.PADLNO = mhfsttrn.TaNum) INNER JOIN mhfshdr ON mhfsttrn.Portfolio = mhfshdr.Portfolio) INNER JOIN MajorCodes ON mhfsisu.MajorType = MajorCodes.Code) INNER JOIN pmcshflw ON mhfsisu.CashFlowID = pmcshflw.CashFlowID

    WHERE (((Right(Left([mhfshdr].[ShortName],1),3) & "000")<>1000) AND ((LV1FP901_ICPAM.PADLST)="PA") AND ((MajorCodes.TranType)="SEC"))
    ORDER BY LV1FP901_ICPAM.PADLNO, Val([PAPAMT]);


    Et Concernant le format des champs de la table que j'alimente 'BasePam Recon':

    Panum: Number
    MuNum: Number
    Begin: Date/Time
    XBegin: Yes/No
    End: Date/time
    XEnd: Yes/No
    CpnType:Text
    BaseRate: Text
    XBaseRate: Yes/No
    Rate:Number
    XRate:Yes/No
    Cur: Text
    XCur:Yes/no
    Amout: Number
    WAmont: Yes/No

Discussions similaires

  1. Data type mismatch in criteria expression
    Par babacan dans le forum VB.NET
    Réponses: 1
    Dernier message: 26/08/2010, 14h53
  2. [AC-2003] Data type mismatch in criteria expression
    Par Marc_27 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 23/10/2009, 14h44
  3. Requête avec Data type mismatch in criteria expression
    Par Atom420 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 01/10/2007, 14h08
  4. Datatype Mismatch in criteria expression
    Par jam92400 dans le forum Access
    Réponses: 2
    Dernier message: 24/06/2006, 17h14
  5. erreur Data type mismatch in criteria expression
    Par bachilbouzouk dans le forum ASP
    Réponses: 3
    Dernier message: 20/04/2005, 11h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo