![]() |
|
|||||||
| Home | Register | FAQ | Members List | Search | Today's Posts | Mark Forums Read |
![]() |
|
|
LinkBack | Thread Tools | Display Modes |
|
|||
|
Hallo liebe Fangemeinde,
mit meinem kleinen Progrämmle komme ich so langsam vorwärts. Ein kleines Problemchen nach dem Anderen wird gelöst. Nun habe ich wieder etwas, was mir Fragezeichen in die Augen treibt. In einer Form verarbeite ich Mitarbeitermerkmale, die zum Teil per Checkbox eingegeben werden. Zum Beispiel, ob der Mitarbeiter an Montagen einsatzbereit ist. Neben anderen Daten speichere ich diese Daten abschließend in die SQLite-Tabelle. Nach dem Speichervorgang lese ich den Datensatz gleich neu ein um die tatsächlich gespeicherten Daten sichtbar zu machen, quasi als Erfolgsbestätigung. Es werden alle Daten angezeigt, außer den Checkbox-Daten. In der Datenbanktabelle sind sie jedoch vorhanden. Per Zufall habe ich dann festgestellt, daß, nachdem ich eine Feldeigenschaft in der Datenbanktabelle geändert hatte und die Änderung per Apply durchgeführt hatte, plötzlich auch die Checkboxdaten eingelesen und angezeigt wurden. An Begin- und Endtransaction liegt es nicht, denn das wird explizit durchgeführt. Hat jemand eine Idee? Gruß Fontanus ![]() |
|
|||
|
Hallo @Sloopa,
Die Daten werden in der DB als True/False abgespeichert. Wenn ich die DB nebenbei offen habe mit SQLite Expert, dann hat das Feld der Tabelle ein Häkchen, Feldwert also True, und wenn ich parallel dazu die Daten per Reader.GetValue einlese und mir den Variableninhalt anzeigen lasse, dann ist der Wert FALSE. Wenn ich irgendetwas an der Tabellendefinition mache, sogar ohne Änderungen durchzuführen, daß Ganze mit Apply abschliese, lese ich plötzlich tatsächlich auch ein True ein. Aus meiner Sicht hat das erst einmal nichts mit dem Programmcode zu tun. Nichtsdestotrotz, hier der Programmcode zum Abspeichern der Daten. Der Speichervorgang zum Editieren der Daten ist noch nicht vollständig, aber dort tritt dasselbe Phänomen auf. '*** Speichern von Mitarbeiterdaten *** Sub btnMaSave_Click lvMaPkw = "" If ckbMaPkw.Checked = True Then lvMaPkw = "True" Else lvMaPkw = "False" '*** Beginn des Speichervorgangs zunächst für Neueingaben *** If gvLastButton = "NEW" Then '*** Suche nach schon vorhandenen DS mit gleichem Inhalt wie die Neueingabe *** con.BeginTransaction Reader.New1 cmd.CommandText = "Select Count(MA_ID) from MA Where NAME = '" &tbMaName.Text& "' AND VORNAME = '" &tbMaVName.Text& "' " Reader.Value = Cmd.ExecuteReader gvDoublette = Reader.GetValue(0) Reader.Close con.EndTransaction If gvDoublette > 0 Then Msgbox ("Dieser Mitarbeiter ist schon vorhanden!","Information!",cMsgboxOK,cMsgboxHand) tbOrtName.Focus Return '*** Rücksprung zur aufrufenden Sub *** End If con.BeginTransaction cmd.CommandText = "INSERT INTO MA VALUES( '" &tbMaID.Text& "','" &tbMaName.Text& "','" &tbMaVName.Text& "','" "','" "','" &ckbMaPkw.Checked& "','" &ckbMaLkw.Checked& "','" &ckbMaSchl.Checked& "','" &ckbMaEtMo.Checked& "','" &ckbMaEtDi.Checked& "','" &ckbMaEtMi.Checked& "','" &ckbMaEtDo.Checked& "','" &ckbMaEtFr.Checked& "','" &ckbMaEtSa.Checked& "','" &ckbMaEtSo.Checked& "','" "','" &tbMaHandyNr.Text& "','" &tbMaHomeNr.Text& "','" "','" "','" &tbMaEMail.Text& "','" &Date(Now)& "','" "','" "','" "')" cmd.ExecuteNonQuery Reader.New1 cmd.CommandText = "Select Count(MA_ID) from MA" Reader.Value = Cmd.ExecuteReader gvRecCount = Reader.GetValue(0) gvRec = gvRecCount Reader.Close con.EndTransaction End If '*** Beginn des Speichervorgangs für Datenänderungen *** If gvLastButton = "EDIT" Then con.BeginTransaction cmd.CommandText = "UPDATE MA SET NAME = '" &tbMaName.Text& "', VORNAME = '" &tbMaVName.Text& "', PKW = '" &ckbMaPkw.Checked& "', LKW = '" &ckbMaLkw.Checked& "', SCHL = '" &ckbMaSchl& "', ES_MO = '" &ckbMaEtMo.Checked& "', ES_DI = '" &ckbMaEtDi.Checked& "' WHERE MA_ID = '" &tbMaID.Text& "' " cmd.ExecuteNonQuery Reader.New1 cmd.CommandText = "Select Count(ORT_ID) from ORT" Reader.Value = Cmd.ExecuteReader gvRecCount = Reader.GetValue(0) Reader.Close con.EndTransaction gvRec = gvRecTemp End If CloseMAFields ReadOneMA MAButtonCheck End Sub '------------------------------------------------------------------------------------[/b] Einen schönen 1. Mai wünscht... Fontanus P.S. Ich habe weiterhin nun festgestellt, daß, nachdem ich die Daten per SQLite Expert nur in der Editiermodus gebracht habe und wieder abgeschlossen habe, die Daten richtig eingelesen werden. Grundsätzlich funktioniert es. Die Daten werden wie gewünscht abgespeichert und auch in meinem Progrämmle angezeigt, aber erst, nachdem ich manuell in der DB etwas getan habe. Last edited by Fontanus : 05-01-2007 at 06:16 PM. Reason: Neue Erkenntnisse... |
|
||||
|
So früh am morgen... (als Entschuldigung dafür, dass ich deinen Quellcode nicht verstehe)
Aber mal ein anderer Tipp, denn ich im Post zuvor schon angebracht habe: Ersetze true und false durch 1 und 0 in deiner Datenbank und frage diese Werte doch ab - so groß dürfte der Aufwand nicht sein. (if a = 1 then checkbox.checked = true ...) btw: wie oft öffnest du die Datenbank? (nur einmal, oder bei jeder neuen Abfrage -- nur als Info für mich, hat mit deinem Post jetzt nichts zu tun) sLooPa
__________________
sL00Pa A636 (@416) / WM5 / 4GB / Bluetooth-Keyboard(I'm not a native english-speaker - if I make mistakes, please correct me!)
|
|
|||
|
Hi @Sloopa,
ich werde Deinen Tip mal testen. Der Aufwand sollte nicht sehr groß sein. Danach werde ich berichten. Die DB öffne ich jeweils beim Aufruf der Form und schließe sie wieder beim verlassen. Reader-Aufrufe beende ich sofort nach Ablauf des Lesevorgangs. Gruß Fontnus ![]() |
|
|||
|
Hallo @sLooPa,
Problem gelöst. Ich setze nun tatsächlich die Checkbox-Werte True/False in 1/0 um, und siehe da, es funktioniert. Frage mich aber bitte nicht nach dem Warum! Keine Ahnung und davon Viel! Hauptsache, es funktioniert und es geht weiter. Gruß Fontanus P.S. Bis zur nächten Frage ![]() |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| SQlite problem | Ricky D | Questions & Help Needed | 3 | 10-04-2008 09:49 AM |
| Regarding SQLite problem | mozaharul | Questions & Help Needed | 0 | 04-02-2008 10:28 AM |
| Problem Converting CSV to SQLite | tcgoh | Questions & Help Needed | 5 | 11-01-2007 03:50 AM |
| SQLite Update Problem | david | Questions & Help Needed | 1 | 10-10-2007 12:22 PM |
| Another sqlite problem! | giannimaione | Questions & Help Needed | 5 | 05-13-2007 08:25 AM |