Was stimmt an dem SQL befehl nicht
-
hallo, ich habe ein problem. so langsam koche ich. Ich benutze BDE. Und leider will diese meine SQL-Befehl nicht schlucken:
SELECT kunden.ID,kunden.Name FROM kunden,konditionen WHERE kunden.ID=konditionen.ID
was stimmt hier nicht, ich habe schon in google soviel beispiele gesehen und die sehen alle identisch aus. Doch leider meldet mir der sqlexplorer type mismatch in expression. Ich habe es auch mit JOIN versucht doch leidere klappt das auch irgendwie nicht. Mach ich da wirklich irgendwo einen fehler oder ist die BDE so doof.
Kann mir vieleicht jemand helfen?
danke für jeden tip
-
Sind die Felder "ID" in beiden Tabellen vom selben Typ?
Ansonsten würde ich das Statement übrigens so schreiben:SELECT a.ID, a.Name FROM kunden a,konditionen b
WHERE a.ID = b.IDIst aber vielleicht auch nur Geschmacksache.
Gruß,
Alexander
-
Funktioniert das : SELECT * FROM kunden,konditionen WHERE kunden.ID=konditionen.ID ?
Falls nicht, check deine Primärschlüssel in der DB.
-
hallo, danke für eure hilfe. Ich glaube ich weiß nun woran es liegt. Und zwar sind die beiden felder in den tabellen unterschiedlicher dateitypen. Das eine ist ein automatischers increment und das andere feld ein string. Deshalb kann es das ja nicht vergleichen. wie soll ich das dann sonst lösen? Ich muß doch bei eingabe eines neuen kunden die kundennr um 1 erhöhen. das macht die datenbank dann selbst, ist ja die einfachste lösung als selbst nummern zu verwalten. Wenn ich dann konditionen für den kunden deklariere dann speicher ich ja nur seine kundnr und über diese kann ich dann alles aus der kundendatenbank auslesen. Ich will ja redundanzen vermeiden. doch leider kann ich ja die beiden datenbanken nicht deswegen nicht mehr vergleichen. Wie kann ich denn das problem umgehen?
-
hallo zusammen, ihr habt mir auf jeden fall geholfen. Ich habs gelöst. ich habe einfach die eine ID mit dem datentyp string auf integer geändert und schon läuft es. Echt vielen dank. ich hoffe ich kann euch auch mal helfen.
mfg
sebastian