Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

ich hab eine methode in der ich aus einer datenbank daten auslese das problem ist bis jetz hab ich das nur für ein feld (name) ich möchte aber 2 abfrage werte haben (nahme und vorname )

wer kann mir da helfen

ich hab es bereits mit einer und verknüpfung versucht aber es geht nicht

private void jMenuItemAnzeigenActionPerformed(ActionEvent evt)

{

Toolbox myBox = new Toolbox();

myBox.setAccessData ("Klient.mdb");

//Anzeigen miz exceptions

try

{

String[][] data=myBox.queryAccess

("Select * from KlientTab where Name= '" + jTextFieldName.getText() +"'");

jTextFieldVorname.setText(data[0][1]);

jTextFieldGebDat.setText(data[0][2]);

jTextFieldAlter.setText(data[0][3]);

jTextFieldAdresse.setText(data[0][4]);

jTextFieldHaus.setText(data[0][5]);

jTextFieldHandy.setText(data[0][6]);

jTextPaneNotitz.setText(data[0][7]);

jTextAreaStatus.setText("Datensatz gegunden");

}

binn dankbar für jede hilfe ^^

Geschrieben
ich hab eine methode in der ich aus einer datenbank daten auslese das problem ist bis jetz hab ich das nur für ein feld (name) ich möchte aber 2 abfrage werte haben (nahme und vorname )

wer kann mir da helfen

Bitte schreibe genau was Du meinst!

Wo hast Du die beiden Felder in der Datenbanktabelle oder in Deinem Programm. Aufgrund des Codes würde ich auf das Programm tippen, dann musst Du einfach beide Strings konkatenieren (siehe dazu die Operatoren in Java). Wenn Du es genau anders brauchst, d.h. Du hast ein Feld in Deinem Programm aber zwei in der Datenbank, nimm einen Tokenizer um Deinen String zu trennen

Ich rate Dir bei SQL ganz dringend zu PrepareStatements.

Phil

Geschrieben

also mit dem code les ich ja aus einer ms access datenbank und auf der gui muss ich bis jetz nur den nachnamen eingeben und dann auf anzeigen klicken damit der gesammte datensatz in der gui angezeigt wird ich möchte aber denn namen und vornamen eingeben und dann auf anzeigen klicken

wie soll ich die beiden strings kontaktierrn bzw wo stehen java operationen ??

danke für die hilfe

Geschrieben
also mit dem code les ich ja aus einer ms access datenbank [...]

Ich rate gerade dabei zu PrepareStatements. Es erleichtert die genaue Typenzuordnung.

wie soll ich die beiden strings kontaktierrn bzw wo stehen java operationen ??

Operatoren in Java

Ich möchte Dir aber noch zu Deinem Datenmodell sagen, dass Du dieses ggf einmal überdenken solltest, denn man würde Vornamen und Nachmen trennen, damit auch Teilsuchen möglich sind

Phil

Geschrieben

zitat von phill

Ich möchte Dir aber noch zu Deinem Datenmodell sagen, dass Du dieses ggf einmal überdenken solltest, denn man würde Vornamen und Nachmen trennen, damit auch Teilsuchen möglich sind

zitat ende

ich will da sowieso noch radiobuttons einfugen damit man entscheiden kann ob man nur vor oder nur nachname oder beides scuhen will ^^

ich gug mir den link an danke ^^

wie amch ich das da zitat stehtr hehe

Geschrieben

so hab die zeile jetz so geändert

("Select * from KlientTab where Name= '" + jTextFieldName.getText()+ "'" && "where Vorname ='" jTextFieldVorname.getText() +"'");

nur bei jtextfieldvorname...

meint eclips syntax error delet this token aber ich kann kein syntaxfehler entdecken

Geschrieben

man ich blick grade gar nicht durch kann man mir nciht einfach den befehl bitte geben =( wenn ich vor jtextfieldvorname ein operator (+) amche is der ganze befehl rot =(

ich verzweifel langsam =(

immer diese blöden syntax die regen mich immerwieder auf xD

Geschrieben
man ich blick grade gar nicht durch kann man mir nciht einfach den befehl bitte geben
Nein. Aus Vorsagen lernst du nicht. Und wenn du es nicht lernst, bist du innerhalb kurzer Zeit mit einem ähnlichen Problem wieder hier. Vorsagen ist Zeitverschwendung.

=( wenn ich vor jtextfieldvorname ein operator (+) amche is der ganze befehl rot =(
Naja, vielleicht ist ja auch noch etwas anderes falsch. Warum hast du denn eigentlich an einer Stelle && statt + benutzt?

Und selbst wenn das so irgendwann mal funktioniert: Ist dir klar, was passiert, wenn jemand als Vorname-Suchwort

'; DROP TABLE KlientTab; --

eingibt?

Lass diese Stringbastelei.

Geschrieben

ZITAT

Naja, vielleicht ist ja auch noch etwas anderes falsch. Warum hast du denn eigentlich an einer Stelle && statt + benutzt?

ZITAT ende

naja ich hab && benutzt um die beiden befehle miteinander zu verknüpfen

Geschrieben
ZITAT
Benutz bitte [quote]-Tags. Die werden automatisch erstellt, wenn du auf Zitieren statt auf Antworten klickst, da kannst du dir ansehen, wie das funktioniert.

naja ich hab && benutzt um die beiden befehle miteinander zu verknüpfen
Das sind aber keine Befehle, das sind Strings. An allen anderen Stellen hast du die Strings mit + verkettet.
Geschrieben

ich geh ja imme rauf zitieren da sin daber keine tags naja hab jetz mit + gemacht kein fehler drinne aber er findet den datensatz nicht

da steht wieder fehlender operator in den abfrageaustrücken vorname und name -.-

mit dem zitierne bekomm ich nicht so hin wie ich will sry

Geschrieben
da steht wieder fehlender operator in den abfrageaustrücken vorname und name -.-
Ja, deswegen hatte ich dir empfohlen, dir die Syntax von WHERE-Klauseln genauer anzusehen. Ein kleiner Tipp: Zweimal "where" ist Blödsinn.

Lass dir doch den fertig zusammengebastelten String mal ausgeben.

mit dem zitierne bekomm ich nicht so hin wie ich will sry
So schwierig kann das doch nicht sein.

Schreib [quote] vor den zitierten Text, und [/quote] dahinter.

Geschrieben

jetz binn ich auch noch mehr verwirrt der eine sagt + der andere AND wobei nur + geht sonst wird es rot (und mein englsich ist acuh nicht das beste aber thx für die seite )

und textmässig binn cih bei den code den ich hatte -.-.

("SELECT * FROM KlientTab WHERE Name='" + jTextFieldName.getText() + "'" +* "Vorname='" + jTextFieldVorname.getText() +"'");

*= wenn ich da ein AND mache wirds rot

und wenn ich das mit dem + durchlaufen lasse sagt eclips nur

SQL Exception: [Microsoft][ODBC Microsoft Access Driver] Syntaxfehler (fehlender Operator) in Abfrageausdruck 'Name='name'Vorname='vorname''.

ich vernute ja das es doch an dem + liegt

ich weiß schon warum ich sql und die iseries nicht mag -.-

Geschrieben

das + ist ein Java operator und das AND von SQL

du hast das AND allerdings als Java perator benutzt.

Jez müsste dir klar sein, wieso es nicht ging.

"SELECT * FROM DeineTabelle WHERE name="' + value +"' AND vorname= '" + value + "'"

Geschrieben
jetz binn ich auch noch mehr verwirrt der eine sagt + der andere AND
Du musst hier zwischen Java und SQL unterscheiden. Das + brauchst du, um in Java deine Strings zusammenzuklöppeln (die Hinweise, dass das eine schlechte Idee ist, prallen ja an dir ab). AND brauchst du, um mehrere Bedingungen in deiner SQL-Abfrage zu verknüpfen. Das AND muss also im String stehen.
Geschrieben

ein wunder es geht =)

danke nochmal für die gute unterstützung die einfachsten fehlehr kann halt immer nur ich machen =(

aber danke für die gedult ^^

wenn jemand aus bremen kommt lad ich euch gerne davor ein xDD auf enn eis hehe

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...