Foutmelding 3464 bij join verbinding

Status
Niet open voor verdere reacties.

timvdneut

Gebruiker
Lid geworden
25 jan 2012
Berichten
6
Goedenavond allemaal,

Bij het opzetten van een query uit 2 queries loop ik telkens tegen de volgende foutmelding aan:
Gegevenstypen komen niet overeen in criteriumexpressie. (Fout 3464).
Hieronder de SQL-code:

SELECT [DMS - Geldige Stati, compared].*
FROM [DMS - Geldige Stati, compared] LEFT JOIN [ARIS - Aanpassing benaming] ON [DMS - Geldige Stati, compared].AT_NAME = [ARIS - Aanpassing benaming].AT_NAME
WHERE ((([ARIS - Aanpassing benaming].AT_NAME) Is Null));

Ik heb er nadrukkelijk voor gezorgd dat zowel [ARIS - Aanpassing benaming].AT_NAME als [DMS - Geldige Stati, compared].AT_NAME een numerieke waarde hebben.

Ziet iemand waar de fout kan zitten?

Ik zit er de hele middag tegen aan te hikken, dus alle suggesties zijn van harte welkom!:)

Groet,
Tim
 
Dank voor je snelle reactie!

Bij onderstaande variaties krijg ik geen foutmelding:

Geen Is Null-criterium:
SELECT [DMS - Geldige Stati, compared].*
FROM [DMS - Geldige Stati, compared] INNER JOIN [ARIS - Aanpassing benaming] ON [DMS - Geldige Stati, compared].AT_NAME = [ARIS - Aanpassing benaming].AT_NAME;

SELECT [DMS - Geldige Stati, compared].*
FROM [DMS - Geldige Stati, compared] LEFT JOIN [ARIS - Aanpassing benaming] ON [DMS - Geldige Stati, compared].AT_NAME = [ARIS - Aanpassing benaming].AT_NAME;

SELECT [DMS - Geldige Stati, compared].*
FROM [DMS - Geldige Stati, compared] RIGHT JOIN [ARIS - Aanpassing benaming] ON [DMS - Geldige Stati, compared].AT_NAME = [ARIS - Aanpassing benaming].AT_NAME;

Toepassing Is Null-criterium:

SELECT [DMS - Geldige Stati, compared].*
FROM [DMS - Geldige Stati, compared] RIGHT JOIN [ARIS - Aanpassing benaming] ON [DMS - Geldige Stati, compared].AT_NAME = [ARIS - Aanpassing benaming].AT_NAME
WHERE ((([ARIS - Aanpassing benaming].AT_NAME) Is Null));

SELECT [DMS - Geldige Stati, compared].*
FROM [DMS - Geldige Stati, compared] INNER JOIN [ARIS - Aanpassing benaming] ON [DMS - Geldige Stati, compared].AT_NAME = [ARIS - Aanpassing benaming].AT_NAME
WHERE ((([ARIS - Aanpassing benaming].AT_NAME) Is Null));


Alleen dus bij de left join verbinding.
Mogelijk relevante informatie: De query zoals ik 'm wil hebben hoort in dit geval geen output te leveren.

Groet,
Tim
 
Welke criteria heb je uitgeprobeerd op [ARIS - Aanpassing benaming].AT_NAME? Je kunt eens stoeien met "" bijvoorbeeld. Voor het geval het toch een tekstveld is...
 
Momenteel zit ik niet meer achter m'n computer, morgenochtend zal ik weer verder mee gaan.

[ARIS - Aanpassing benaming].AT_NAME is vanuit een XML-file geïmporteerd als tekst. Dit wegens het tekstuele deel. Daarna heb ik het numerieke deel verwijderd en via Val() numeriek proberen te maken. Heb nog een beetje met Cint Clon Int gespeeld, maar veranderde niets.

Groet,
Tim
 
Als het veld een tekstveld is, dan snap ik de foutmelding wel. Dan moet je inderdaad filteren op "" . Zolang je de veldeigenschap niet aanpast, blijft het een tekstveld, en moet je het veld ook als zodanig behandelen.
 
Verandert de eigenschap van een tekstveld niet, wanneer ik voor de waarde val() als functie zet, naar numeriek? Hoe zou ik bijvoorbeeld 123456 [DEV] numeriek kunnen maken? Het deel 123456 dan natuurlijk. Kan dit door te spelen met ""? Dit zie ik nog niet helemaal voor me.

Groet,
Tim
 
Verandert de eigenschap van een tekstveld niet, wanneer ik voor de waarde val() als functie zet, naar numeriek?

Nee.
Je probleem heeft niets te maken met het gebruiken van NULL ipv "".
Ik vermoed eerder dat je melding met je gegevens te maken heeft.
Sluit even een voorbeeldbestand bij waarin de foutmelding optreedt.

Tardis
 
Dankje voor je reactie.

Ik zal morgenochtend gegevens toevoegen.
Waar denk je aan?

Groet,
Tim
 
Om te beginnen: de query waar het om gaat en de betreffende tabellen, en verder voldoende gegevens om het probleem te reproduceren. Liefst ook in 2003 format.
 
Probleem is ondertussen opgelost.
Heb de trimfunctie toegepast en Clng()--> Clng(trim())
Dit leverde geen problemen meer op.

Bedankt voor het meedenken!
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan