Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Mybase XML Fremdschlüssel (https://www.delphipraxis.net/128103-mybase-xml-fremdschluessel.html)

alex.666 24. Jan 2009 08:06

Datenbank: MyBase • Zugriff über: XML

Mybase XML Fremdschlüssel
 
Hallo leute!

ich bin schon am verzweifeln. :firejump:

ich habe 2 ClientDataSets, 2 DataSources und 2 DBGrids

ClientDataSet1:
ID1
Vorname

ClientDataSet2:
ID2
Nachmame
Vorname

ich will jetzt dem Vorname(ClientDataSet2) einen fremdschlüssel geben:

Eigenschaften von ClientDataSet2(Vorname)
KeyFields: ID2 (und das verstehe ich nicht, weil da müsste ja ID1 stehen. ich kann aber nur felder von ClientDataSet2 auswählen)
LookupDataSet: ClientDataSet1
LookUpKeyFields: ID1
LookUpResaultFields: Vorname

FieldKind: fklookup (natürlich)

was mach ich falsch?

bitte, bitte um hilfe. :-)

alex.666 24. Jan 2009 08:46

Re: Mybase XML Fremdschlüssel
 
achja, mein problem sollte ich auch posten. :-)

wenn ich im dbgrid2 einen vornamen auswähle, dann ändert sich auch ID2 (mit der ID1 vom vornamen aus dbgrid1)

mkinzler 24. Jan 2009 08:49

Re: Mybase XML Fremdschlüssel
 
Du musst imho Vorname auswählen

alex.666 24. Jan 2009 08:57

Re: Mybase XML Fremdschlüssel
 
imho??? was ist das?

im KeyFields hab ich aber nur ID2 und Nachname (und halt Vorname_ID)

mkinzler 24. Jan 2009 08:59

Re: Mybase XML Fremdschlüssel
 
In deiner Feldübersicht oben hast du das FK-Feld Vorname benannt. Wenn es Vorname_ID heisst, musst du natürlich dieses auswählen.

alex.666 24. Jan 2009 09:11

Re: Mybase XML Fremdschlüssel
 
sorry, ich hab mich verschrieben.


ClientDataSet1:
ID1
Vorname

ClientDataSet2:
ID2
Nachmame
Vorname_ID

aber was ich nicht verstehe, warum im bei KeyFields nur ClientDataSet2 auswählen kann. ich will aber das ID1 vom ClientDataSet1 haben...
oder hab ich da jetzt was falsch verstanden. wo soll ich Vorname (oder Vorname_ID) eintragen...

sakura 24. Jan 2009 09:15

Re: Mybase XML Fremdschlüssel
 
Zitat:

Zitat von alex.666
imho??? was ist das?

Sieht Du die grüne, gestrichelte Linie bei imho? Halte mal die Maus darüber ;)

...:cat:...

mkinzler 24. Jan 2009 09:21

Re: Mybase XML Fremdschlüssel
 
Zitat:

Zitat von alex.666
sorry, ich hab mich verschrieben.


ClientDataSet1:
ID1
Vorname

ClientDataSet2:
ID2
Nachmame
Vorname_ID

aber was ich nicht verstehe, warum im bei KeyFields nur ClientDataSet2 auswählen kann. ich will aber das ID1 vom ClientDataSet1 haben...
oder hab ich da jetzt was falsch verstanden. wo soll ich Vorname (oder Vorname_ID) eintragen...

Als KeyFields des Detail-DataSets.
Du kannt beim ClientDataSet2 natürlich nur dessen Felder abfragen, diese willst du ja auch ändern

alex.666 24. Jan 2009 09:24

Re: Mybase XML Fremdschlüssel
 
lesen kann ich schon, hilft mir aber derwegen nur ID2, Nachname und Vorname_ID auswählen.
und wenn ich Vorname_ID wähle, dann geht war nix. Ich kann das Feld Vorname_ID nicht editieren.
kann sein, daß das ein bug von Turbo Delphi 2006 ist?

mkinzler 24. Jan 2009 09:25

Re: Mybase XML Fremdschlüssel
 
Vorname_ID ist aber als FK deklariert (Index)?

alex.666 24. Jan 2009 09:32

Re: Mybase XML Fremdschlüssel
 
hab integer und string ausprobiert. ohne erfolg

alex.666 24. Jan 2009 09:34

Re: Mybase XML Fremdschlüssel
 
sorry, kann doch nicht lesen. :-) ja, ja ist FK def.

mkinzler 24. Jan 2009 10:00

Re: Mybase XML Fremdschlüssel
 
Und der Feld des Detail-DS auch (PK)?

alex.666 24. Jan 2009 10:12

Re: Mybase XML Fremdschlüssel
 
vieleicht verstehe ich deine abkürzungen nicht so richtig. aber ID1 ist als type AutoInc(int) def. und Vorname_ID als FieldKind fkLookup (type auch int). ich verwende ja nur ClientDataSet und DataSource. aber vieleicht hab ich was übersehen...

mkinzler 24. Jan 2009 16:52

Re: Mybase XML Fremdschlüssel
 
PK steht für Primary Key also Primärschlüssel.

alex.666 24. Jan 2009 18:26

Re: Mybase XML Fremdschlüssel
 
aber wo stell ich das ein? ich hab ja kein SQL zu verfügung.
hab laut:

http://www.delphi-treff.de/tutorials...mybase/page/2/

das ganze gemacht.

alex.666 24. Jan 2009 19:14

Re: Mybase XML Fremdschlüssel
 
es funktioniert, wenn ich in ClientDataSet2 eine zusätzliche spalte einfüge:

ClientDataSet1:
ID1
Vorname

ClientDataSet2:
ID2
Nachmame
Vorname_ID
Vorname_Value

Eigenschaften von ClientDataSet2(Vorname_Value)
KeyFields: Vorname_ID
LookupDataSet: ClientDataSet1
LookUpKeyFields: ID1
LookUpResaultFields: Vorname

ist auber auch eine pfusch lösung. :?


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz