QsqlQueryModel
Verfasst: 22. Mai 2009 09:00
Hallo,
ich habe ein LineEdit, damit suche ich Begriffe aus einer sql Tabelle, zeige die Begriffe in einer QSqueryModel-Tabelview an und jetzt soll das System, wenn eine Zeile im Modell angeklickt wurde, anhand von z.B Feld 2 in einer zweiten Tabelle nach dem Feld suchen und in einem weiteren LineEdit anzeigen werden.
Ich wollte nicht mit einer Relation arbeiten (ich müsste zu viele erstellen) sondern nur query( select Feld2 from ..where .. )
Ein Feld aus dem aktiven Modell zusätzlich in einem LineEdit klappt eindeutig aber wie komme ich z.B an das Feld 2, es ist und soll nicht im Modell sichtbar sein.
Wenn ich sage query(select Felder aus Tabelle2 where aktiveTabelle.Feld2 = Tabelle2.Feld2)
bekomme ich folgende Fehlermeldung "QSqlQuery::value: not positioned on a valid record"
Ich vermute, dass mit der query Anweisung nicht das aktive Feld2 ermittelt wird und ich weiß nicht wie ich es anstellen soll.
Meine Funktion wird mit dem Modell wie folgt verbunden:
connect(suchView->selectionModel(), SIGNAL(currentChanged(const QModelIndex &, const QModelIndex &)),
this, SLOT(zeigSatz(const QModelIndex &)));
Über den Index habe ich die Zeile. Muss ich jetzt mit split sie in Felder aufteilen?
Muss doch über Relation gehen?
ich habe ein LineEdit, damit suche ich Begriffe aus einer sql Tabelle, zeige die Begriffe in einer QSqueryModel-Tabelview an und jetzt soll das System, wenn eine Zeile im Modell angeklickt wurde, anhand von z.B Feld 2 in einer zweiten Tabelle nach dem Feld suchen und in einem weiteren LineEdit anzeigen werden.
Ich wollte nicht mit einer Relation arbeiten (ich müsste zu viele erstellen) sondern nur query( select Feld2 from ..where .. )
Ein Feld aus dem aktiven Modell zusätzlich in einem LineEdit klappt eindeutig aber wie komme ich z.B an das Feld 2, es ist und soll nicht im Modell sichtbar sein.
Wenn ich sage query(select Felder aus Tabelle2 where aktiveTabelle.Feld2 = Tabelle2.Feld2)
bekomme ich folgende Fehlermeldung "QSqlQuery::value: not positioned on a valid record"
Ich vermute, dass mit der query Anweisung nicht das aktive Feld2 ermittelt wird und ich weiß nicht wie ich es anstellen soll.
Meine Funktion wird mit dem Modell wie folgt verbunden:
connect(suchView->selectionModel(), SIGNAL(currentChanged(const QModelIndex &, const QModelIndex &)),
this, SLOT(zeigSatz(const QModelIndex &)));
Über den Index habe ich die Zeile. Muss ich jetzt mit split sie in Felder aufteilen?
Muss doch über Relation gehen?