von Onkel Hatti » Do, 08.09.2005 19:00
mathew05 hat geschrieben:hallo zusammen,
habe leider gleich zwei Sachen in Punkto MySQL und OO. Hoffe Ihr könnt mir da weiter helfen.
Ich habe unter Access ein kleines Tool gehabt in dem ich 2 Tabellen gehabt habe wo in der ersten Tabelle die Kundenstammdaten beinhaltet waren und in der anderen die Leistungen. In einem Formular waren die einzelnen Felder aus den Kundenstammdaten wie Firmanename, Ansprechpartner usw. und weiter unten eine Tablle mit mehreren Leistungen. Das heißt wenn cih einen bestimmten Kunden ausgewählt habe dann wurden mir dessen Leistungen angezeigt.
Da ich langsam aber sicher ganz von MS Office weg will habe ich mir gedacht ich portier das ganze auf MySQL und OO 1.1.4 so wie ich es auch mit anderen Anwednungen von mir gemacht habe. Dazu habe ich die ganzen Daten in eine TXT Datei exportiert und in MySQL importiert und dann das ganze mit dem MySQL Treiber und ODBC dem OO zugänglich gemacht. Die tabellen und Daten sind zu sehen.
Problem 1 :
Ich bekomme keine Schreibrechte auf die einzelnen Tabellen obwohl ich schon alle Rechte vergeben habe. Egal ob ich über den ODBC oder dem MySQL Treiber gehe.
Problem 2 :
Wie würde der SQL Befehl oder die Abfrage lauten wenn ich nur die Daten aus der Tabelle 1 und nur die Daten aus der Tabelle 2 die gleich sind angezeigt bekomme. Momentan werden mir im Formular in der Tabelle mit den Leistungen alle Daten angezeigt. Auch die von den anderen Kunden.
Wäre super wenn mir jemand einen Tipp hätte. Ich hoffe es ist einigermaßen verständlich
Gruß
Mathew
Zu 1. kann ich nix sagen, da fehlen bestimmt noch n paar Berechtigungen...
zu 2.
in den Tabellen muss jeweils ein Eintrag gleich sein.
Z.B. in Tabelle 1 eine Kundennummer
in Tabelle 2 gibt es eine Spalte mit den Kundennummern und den jeweiligen Leistungen.
Dann sieht der Befehl aus:
SELECT leistungsspalte1, leistungsspalte2, leistungsspalte3 FROM tabelle2 WHERE tabelle2.kundennummer=Deine_Auswahl
Also, wenn du die Tabellen vor dir hast, dann kannst du eine Abfrage definieren, wobei für DeineAuswahl eine gültige Kundennummer eingegeben werden muss. Dann zeigt dir Oo.org die Leistungen zur gewählten Kundennummer an.
In Formularen wird es etwas komplizierter, weil es sich beim Ergebnis des Select-Befehls um ein Resultset handelt, mit dem man jetzt arbeiten kann und muss.
Gruß
Hatti
[quote="mathew05"]hallo zusammen,
habe leider gleich zwei Sachen in Punkto MySQL und OO. Hoffe Ihr könnt mir da weiter helfen.
Ich habe unter Access ein kleines Tool gehabt in dem ich 2 Tabellen gehabt habe wo in der ersten Tabelle die Kundenstammdaten beinhaltet waren und in der anderen die Leistungen. In einem Formular waren die einzelnen Felder aus den Kundenstammdaten wie Firmanename, Ansprechpartner usw. und weiter unten eine Tablle mit mehreren Leistungen. Das heißt wenn cih einen bestimmten Kunden ausgewählt habe dann wurden mir dessen Leistungen angezeigt.
Da ich langsam aber sicher ganz von MS Office weg will habe ich mir gedacht ich portier das ganze auf MySQL und OO 1.1.4 so wie ich es auch mit anderen Anwednungen von mir gemacht habe. Dazu habe ich die ganzen Daten in eine TXT Datei exportiert und in MySQL importiert und dann das ganze mit dem MySQL Treiber und ODBC dem OO zugänglich gemacht. Die tabellen und Daten sind zu sehen.
Problem 1 :
Ich bekomme keine Schreibrechte auf die einzelnen Tabellen obwohl ich schon alle Rechte vergeben habe. Egal ob ich über den ODBC oder dem MySQL Treiber gehe.
Problem 2 :
Wie würde der SQL Befehl oder die Abfrage lauten wenn ich nur die Daten aus der Tabelle 1 und nur die Daten aus der Tabelle 2 die gleich sind angezeigt bekomme. Momentan werden mir im Formular in der Tabelle mit den Leistungen alle Daten angezeigt. Auch die von den anderen Kunden.
Wäre super wenn mir jemand einen Tipp hätte. Ich hoffe es ist einigermaßen verständlich :-)
Gruß
Mathew[/quote]
Zu 1. kann ich nix sagen, da fehlen bestimmt noch n paar Berechtigungen... :lol:
zu 2.
in den Tabellen muss jeweils ein Eintrag gleich sein.
Z.B. in Tabelle 1 eine Kundennummer
in Tabelle 2 gibt es eine Spalte mit den Kundennummern und den jeweiligen Leistungen.
Dann sieht der Befehl aus:
SELECT leistungsspalte1, leistungsspalte2, leistungsspalte3 FROM tabelle2 WHERE tabelle2.kundennummer=Deine_Auswahl
Also, wenn du die Tabellen vor dir hast, dann kannst du eine Abfrage definieren, wobei für DeineAuswahl eine gültige Kundennummer eingegeben werden muss. Dann zeigt dir Oo.org die Leistungen zur gewählten Kundennummer an.
In Formularen wird es etwas komplizierter, weil es sich beim Ergebnis des Select-Befehls um ein Resultset handelt, mit dem man jetzt arbeiten kann und muss.
Gruß
Hatti