<div align="left">
' schrieb:Hi all,
nur ein kleiner tipp. habe als ich mich über LabVIEW und Datenbankanekn infomiert habe dieses os-projekt gefunden.
habe es nicht genauer angeschaut. wer es gebraucht kann mal eine bewertung posten.
g chief
da halt ich gegen mit meinem ADO-Toolkit
Download hier</div>
<div align="left">
' schrieb:LabSQL ist schon eine feine Sache, ich arbeite recht viel damit.. stehe jetzt doch vor einem Problem.. wie kann man Datensätze aus der Datenbank löschen??
ich kenn mich mit LabSQL nicht aus, aber ich vermute nun mal, dass es kein High-Level VI für DELETE-Statements gibt, darum musst du das Statement "von Hand" erstellen und an die DB senden. Dein Statement sollte ungefähr so aussehen:
DELETE FROM tbl_beispiel WHERE ID_beispiel = 5
Damit werden alle Datensätze in der Tabelle tbl_beispiel gelöscht, die die Bedingung "ID_beispiel IST GLEICH 5" erfüllen. Wenn nun ID_beispiel dein Primary Key (AutoIncrement) ist, wie es normalerweise üblich ist, dann wird genau ein Datensatz, nämlich der mit der ID 5 gelöscht.
Aber
Zitat:IN EINER DATENBANK WIRD NICHTS GELÖSCHT!
Beim Löschen muss man vorsichtig sein. Bei einer relationalen Datenbank (z.B. Access) kann das Löschen eines Datensatzes unter Umständen (aktive Verknüpfung mit Löschweitergabe) dazu führen, dass man weit mehr löscht, als eigentlich beabsichtigt.
Ich hab darum in jeder Tabelle eine Spalte "isdeleted" (Byted, default=0) und sortiere mir die Ansicht in einem Query (SELECT * FROM tbl_beispiel WHERE isdeleted=0) und erziele mit einem isdeleted=1 in dem Query das gleiche Resultat wie beim "echten" Löschen aus der Tabelle, nur mit dem Unterschied, dass ich nicht wirklich lösche, sondern beim Löschen das Feld isdeleted = 1 setze (UPDATE tbl_beispiel SET isdeleted=1 WHERE ID_beispiel = 17)
Aus meiner Sicht legitim wäre das Löschen z.B. in m:n Tabellen, oder Tabellen, die definitiv nicht mit anderen Verknüpft sind bzw. oder keine PKs / FKs enthalten ...
Grüße
CB</div>