Hallo,
ich bin seid kurzem in QT und entwickele gerade ein Programm, dass mehrere Datenbanken verknüpft und verwaltet.
Jetzt wollte ich in einem Fenster die Werte einer einzelnen Tabelle bearbeiten, Zeilen löschen und neue Zeilen hinzufügen.
Da fand ich QTableView und dachte mir super, damit kann man genau das machen was ich will. Aber jetzt blende ich mit Hilfe der "hideColumn" - Funktion die Spalte mit der ID aus. Da es leider kein autoincrement in SQLite gibt, hat die ID keinen Wert und wenn nun eine neue Spalte hinzufüge wird, wird keine ID gesetzt also die Zeile nicht gespeichert.
Jetzt möchte ich entweder erreichen, dass die Zeile trotzdem gespeichert wird und ich dann später in die Tabelle die ID eintrage oder ich will die ID setzen.
wie mach ich das?^^
Danke für eure Hilfe im voraus und sry, hab einfach keine Musterlösung gefunden.
QTableView
Re: QTableView
refresh77 hat geschrieben:Da es leider kein autoincrement in SQLite gibt, hat die ID keinen Wert und wenn nun eine neue Spalte hinzufüge wird, wird keine ID gesetzt also die Zeile nicht gespeichert.
http://www.sqlite.org/faq.html
Außerdem könntest du dir die Arbeit recht leich machen mit
QSqlQueryModel
QSqlTableModel
QSqlRelationalTableModel
Gibt genügend Beispiele in der Doku
Mhh das mit dem Autoinc hatte ich wohl übersehn^^ oder das ist neu !
QSqlRelationalTableModel hab ich mir noch gar nicht abgesehn^^, ich glaub da find ich auch was, spätestens wenn ich eine Verknüpfung aus Tabellen verwalten will brauch ich ja mehr als QTableView.
Jetzt hab ich aber erstmal wieder nen ansatz und was zu lesen^^ danke !

QSqlRelationalTableModel hab ich mir noch gar nicht abgesehn^^, ich glaub da find ich auch was, spätestens wenn ich eine Verknüpfung aus Tabellen verwalten will brauch ich ja mehr als QTableView.
Jetzt hab ich aber erstmal wieder nen ansatz und was zu lesen^^ danke !