RealBasic Datenbank-Eintrag löschen

PapasSohn

Mitglied
Thread Starter
Dabei seit
25.09.2007
Beiträge
21
Reaktionspunkte
0
Hi,
ich hab ein schönes Video-Tutorial gefunden, dass den Aufbau einer Datenbank mit RealBasic erklärt.
Ich habe alles nachgebaut, nur beim Löschen oder Ändern gibt es die Fehlermeldung:
"An exeption of class NilObjectExeption was not handeled. The application must shut down."

Der Code der Löschen-Methode sieht so aus:

dim dr as new databaserecord
dim sql as string

sql = "select * from WP where Website = "'+ list.cell(listindex,0)'

Dim rs as RecordSet = ddl.SQLSelect(sql)

rs.deleterecord

ddl.commit

ddl ist die Datenbank, WP die Tabelle.
Der Fehler liegt meiner Meinung nach im rot markierten Bereich, aber ich habe leider keine Ahnung, was falsch ist und der Debugger hilft auch nicht :(
 
Steht das genau so da drin bei dir wie oben beschrieben? Mit den Hochkommatas? Die wären nämlich "falsch"...so wie das "="-Zeichen.

Versuche mal:

sql="select * from WP where Website like ' "+list.cell(listindex,0)+" ' "

Ob die Leerzeichen (bei ' und ") nun zulässig sind weiß ich nicht, einfach mal probieren. Ich hab sie hier nur gemacht, dass man es besser sehen kann, in meinen Programmen hab ich da nie ein Leerzeichen und das funktioniert immer Prima
 
Hm, also jetzt kommt der Error nicht mehr, aber es passiert auch sonst nichts.
Muss ich dafür die anderen Spalten der ListBox auch noch abfragen (mit dem a like a² and b like b² usw) ?

Wenn ja, wäre die nächste Frage gleich, wie ich das mache :D
 
Wenn du die Zuweisung an die Variable sql so wie von Madcat vorgeschlagen geändert hast (d.h. mit den Leerzeichen), hast du am Anfang und am Ende der aus list.cell übernommenen Zeichenkette ein Leerzeichen.

Das SQL-Statement läuft damit ins Leere.

Mit

sql="select * from WP where Website like '"+list.cell(listindex,0)+"'"

müsste es eigentlich funktionieren.

Grüße
Stefan
 
Ne musst du nicht. Du musst nur das RecordSet mit der "neuen" Datenbank laden...ist schon ein Weilchen bei mir her...ich glaub das war so weil der Datensatz zwar in der Datenbank gelöscht wird aber nicht im Recordset. Deshalb muss man die Datenbank neu in das Recordset laden.

Die Fehlermeldung sagte ja nur, dass du versuchst auf ein nicht existierendes Element/Objekt zuzugreifen. Das geht dann in die Hose.

Ein paar nette Tutorials sind auch im realbasic-Forum zu finden allerdings weiß ich nicht bei welchen noch die Dateien zugänglich sind da das Forum mal Offline war und dann einiges verschwunden ist...leider.
 
Zurück
Oben Unten