Autor Beitrag
cscp
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 49



BeitragVerfasst: So 23.01.05 21:46 
Hallo,
ist es denn im Paradox System möglich nach einem Teilstring zu suchen...
Also angenommen ich hab in der Datenbank stehen 'Dies ist ein Test Eintrag' kann ich dann nach Eintrag suchen lassen und diesen Datensatz holen?
Danke!
atarigold
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 84

WIN XP, Linux 2.4
D7, Delphi 2006 Prof
BeitragVerfasst: So 23.01.05 23:24 
Ja, sehr einfach mit dem LIKE-Operator, also z. B.

select Test_ID, Kommentar from Test
where Kommentar like '%Eintrag'

Das Jokerzeichen % steht für beliebig viele Zeichen. % zu Beginn eines Zeichenstrings sollte aber bei umfangreichen Tabellen möglichst vermieden werden.

atarigold
cscp Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 49



BeitragVerfasst: Mo 24.01.05 00:29 
benutze aber das paradox 7 system...
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Mo 24.01.05 09:36 
Hat mit der Paradox-Version nichts zu tun.
Du musst mit einer TQuery statt einem TTable-Komponente auf deine Daten zugreifen.
Argoran
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mo 21.02.05 23:14 
Hi,

sry, dass ich den Thread noch einmal aufrolle, aber ich verstehe nicht ganz wie das gemeint. Ich habe eine Paradox7 Tabelle und möchte darin in einem bestimmten Feld einen beliebigen Inhalt finden. Ich hatte folgenden Code dafür verwendet: Table1.Locate('Feld1', Edit1.Text, [loCaseInsensitive, loPartialKey]);
Das Problem daran ist, dass er die Anfrage nur findet, wenn sie ganz am Anfang steht, also nicht in der Mitte. Könnt ihr mir das mit dem TQuery noch einmal genauer erklären?

Vielen Dank

Argoran
schlumpf70
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 21



BeitragVerfasst: Mo 21.02.05 23:28 
atarigold hat folgendes geschrieben:
Ja, sehr einfach mit dem LIKE-Operator, also z. B.

select Test_ID, Kommentar from Test
where Kommentar like '%Eintrag'

Das Jokerzeichen % steht für beliebig viele Zeichen. % zu Beginn eines Zeichenstrings sollte aber bei umfangreichen Tabellen möglichst vermieden werden.

atarigold


Table1.Locate('Feld1', '%'+Edit1.Text, [loCaseInsensitive, loPartialKey]);
^^ wenn mich nicht alles täuscht müsste funzen
Argoran
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mo 21.02.05 23:48 
geht leider net :( , aber danke dir
Argoran
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Di 22.02.05 16:42 
weil dann sucht er ja nach dem String % + der Eintrag im Edit Feld. Hat keiner eine Lösung dafür?
Argoran
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 23.02.05 20:48 
ok, habe mir jetzt selber was überlegt. Ich stelle den Code hier rein, damit wenn jemand das gleiche Problem hat Hilfe bekommt.
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
procedure TForm1.Button1Click(Sender: TObject);
var anzahl,i,posi,fundstellen : integer;
begin
  Table1.DisableControls;
  Table1.First;
  anzahl := Table1.RecordCount;
  i := 1;
  ComboBox1.Clear;
  fundstellen := 0;
  while not Table1.Eof do
  begin
    if i = 1 then
      Table1.First
      else
        Table1.Next;
    if anzahl >= i then
      begin
        posi := pos(Edit1.Text, Table1.FieldByName('FELDNAME').AsString);
        if posi <> 0 then
        begin
          fundstellen := fundstellen + 1;
          label13.caption := IntToStr(fundstellen);
          ComboBox1.Items.Add(IntToStr(i));
        end
        else
          label13.caption := IntToStr(fundstellen);
      end;
    i := i + 1;
  end;
  Table1.EnableControls;
end;

Die Fundstellen werden in einer ComboBox ausgegeben.
cu

Moderiert von user profile iconGausi: Code- durch Delphi-Tags ersetzt.