Datei-Pfade werden nicht gefunden obwohl vorhanden
-
Hi. In meiner Datenbank hab ich Pfade zu mp3-Dateien gespeichert. Die Dateien werden automatisch gesucht und gespeichert. Die Suche überprüft aber auch ob Pfade schon vorhanden sind und soll dann eigentlich den Pfad nicht speichern. Aber er findet in der Datenbank keinen Pfad obwohl die alle eingetragen sind.
Hier mal die Suchabfrage:
while (Datei.getline(found, 1000)) { Form1->ADOQuery1->Close(); Form1->ADOQuery1->SQL->Clear(); Form1->ADOQuery1->SQL->Add("SELECT * FROM musik WHERE Pfad LIKE ('%found%')"); Form1->ADOQuery1->Open(); if(Form1->ADOQuery1->IsEmpty() ) Liste.push_back(AnsiString(found));
Ich habs jetzt auch schon mit verdoppeln der Sonderzeichen \ und ' gemacht so wie man es beim Eintragen in der Datenbank machen muss:
while ((pos = Zeile.find ("\\", pos+1)) != string::npos) { Zeile.insert (pos, "\\"); pos = pos + 2 ; } while ((pos = Zeile.find ("'", pos+1)) != string::npos) { Zeile.insert (pos, "'"); pos = pos + 1 ; } AnsiString Text = Zeile.c_str(); Form1->ADOQuery1->Close(); Form1->ADOQuery1->SQL->Clear(); Form1->ADOQuery1->SQL->Add("INSERT INTO musik (Pfad) VALUES ('"+Text+"')"); Form1->ADOQuery1->ExecSQL();
Aber auch hier klappt die Suche nicht. Er findet nie was
Habt ihr ne Ahnung wie ich das hinkriege? In der Datenbank stehen die Pfade in dieser Form:
D:\Musik\02-lars_klein-back_in_time-hqem.mp3
Woran kann das liegen? Ich seh keinen Fehler.
Gruß Alex
-
Ich hab jetzt grad mal gestestet ob er was findet wenn ich den Pfad in den SQL-Befehl direkt eingebe also so:
Form1->ADOQuery1->SQL->Add("SELECT * FROM musik WHERE Pfad LIKE ('D:\Musik\02-lars_klein-back_in_time-hqem.mp3')");
Selbst dann findet er nichts. Versteh das nicht
-
Hat sich erledigt.
Ich weis zwar net warum aber jetzt funktioniert es auf einmal