![]() |
Datenbank: Firebird • Version: 2,0 • Zugriff über: ibexpress
ibtable.Locate xy > 10
Hallo
ich kenne bislang nur das ibtable.Locate bei Interbase / Firebird in der Form das ich schreibe
Delphi-Quellcode:
sqldbform.IBTable_userdat.Locate('USNUM',usernum,[locaseInsensitive,loPartialKey]) then
Also Quasi ist im Feld USNUM die usernum drinnen dann gefunden Ich möchte jetzt aber z.B. usnum > 20 oder usnum <> 20 schreiben Geht das auch ? Könnte ich in der Filter Eigenschaft diese habe ich nicht nicht benutzt das auch in einem Select machen also where usnum <> 20 Aber wie gehe ich dann durch die Table sqldbform.IBTable_userdat.locatenext oder .next geht dann ja nicht oder Ich habe schon alles durchgesucht finde aber nix gescheites google kennt mich nun schon mit Namen :-) Wer könnte mir da etwas helfen ... Danke schon mal Joachim |
AW: ibtable.Locate xy > 10
Hallo,
verabschiede dich einfach von IBTable und nimm eine IB_Query. Heiko |
AW: ibtable.Locate xy > 10
Hallo Heiko
das dachte ich mir schon das das kommt aber da habe ich doch gleich mal auch keine Ahnung von und gefunden habe ich dann auch gleich 3 mal nix gutes habe 1000 Bücher und alles aber ich kann am meisten mit einem Beispiel anfangen Ich habe das meiste ja auch auf Query Könnte wahrscheinlich auch einfach umsteigen mag aber keine DBGRID verwenden und hängt das nicht zusammen ? Ich nehme Query momentan nur zum schreiben von neuen Datensätzen aber nicht zum suchen von Datensätzen dazu habe ich nichts nichts gefunden Komme von Datenbank her aus der Dbase Codebase Abteilung |
AW: ibtable.Locate xy > 10
Hallo,
Zitat:
Nimm ein einfaches TStringGrid, wenn du ein Grid brauchst. Eine SQL-DB wird durch TTable nur vergew... Heiko |
AW: ibtable.Locate xy > 10
hallo das mitz dem stringgrid mache ich ja wenn ich ttable benutze
aber wie such ich im ibquerry ok den sql string select * from table where Num > 10 :glaskugel: aber wi mach ich den next und so bitte habt Ihr du ein Beispiel ein kleines dann verstehe ich das auch Wenn ich das richtig verstand habe dann gibt ibquery eine art Tabelle zurück. Möchte aber dann auf das Resultat zeilenorientiert zugreifen geht das dann steige ich sofort um würde mir auch besser gefallen Unter ibquery finde ich alles und nichts die alten Delphi Versionen hatten noch ne gescheite Hilfe .. Danke schon mal ok bin also quasi schon am gehen von ttable .. ist dann auch das Transaktion Problem geringer ? TTable möchte eine Transaktion wenn ich eine locate mache und da nur eine Transaktion geht muss ich mini Transaktion machen so das es eigentlich keinen Sinn mehr macht ... |
AW: ibtable.Locate xy > 10
Hallo,
Delphi-Quellcode:
IBQuery.SQL.Text:= 'Select XXX Where Num>10';
IBQuery.Open; try while not IBQuery.Eof do begin IBQuery.FieldByName().XXX // aktueller Datensatz IBQuery.Next; end; finally IBQuery.Close; end; Heiko |
AW: ibtable.Locate xy > 10
Danke ! :thumb::thumb::thumb::thumb:
Ich benötige noch eine Transaction oder ? warum benötige ich ein transaction wen ich nur ne liste abfrage ? ich habe ein bsp aus einem andern Thread gefunden .. Wie finde ich aber den nächsten gültigen Eintrag :?: Sorry ihr seht ich fange mit dem mist an aber vielleicht hilft es ja den andern Anfängern in firebird auch ich arbeite schon ewig mit databases aber nicht mit SQL Servern sorry :?: |
AW: ibtable.Locate xy > 10
ich wieder das ist ja ein while
dann ist klar der läuft durch bis alle übetragen sind ist das so richtig bis eof DANKE :thumb::shock::idea::cheers: ich hänge dann mal etwas source an den Thread wenn ich fertig bin damit alle neuen Fische wie ich auch was von haben ... mano eigentlich ganz einfach |
AW: ibtable.Locate xy > 10
Hallo,
Zitat:
*darf der Frager selber einbauben* Zitat:
Es wird vom SQL-Server eine temporäre Tabelle erzeugt, die nur die gültigen Ergebnisse enthält. Diese Ergebnis-Tabelle wird mit der Query durchlaufen. *Sehr Vereinfacht* gesagt. Heiko |
AW: ibtable.Locate xy > 10
Danke Heiko
und das laufe ich mit einer While durch oder ist das eine art array ? ok das probiere ich dann gleich mal Ist ein ganz anderes denken als bei File Datanbanken |
AW: ibtable.Locate xy > 10
Noch ne kleine Frage
Wie suche ich denn unscharf nach Strings
Delphi-Quellcode:
Das geht aber nicht
Select * from Adrtab where 'Adrname' like 'Mu*'
Delphi-Quellcode:
:thumb:
Select * from Adrtab where 'Adrname' starting with 'Mu*'
geht :dancer: aber es gab doch bei SQL auch ein unscharfes Select ? :gruebel: Es muss doch eine Liste der möglichen where syntax geben ! Gibt es irgend wo eine Hilfe der Firebird ibquery SQL Statements :gruebel: Danke P.s. bis auf das Problem mit der unscharfen Suche klappt es gut ... Also bei Locate war es der Parameter loPartialKey aber ich kenne ibtable ja schon nicht mehr :-D OK einen Link habe ich gefunden ! ![]() ![]() |
AW: ibtable.Locate xy > 10
ich kenne Firebird nicht aber die übliche SQL-Syntax wäre
Code:
oder auch
where Feld like 'Mu%'
Code:
where Feld like '%us%'
|
AW: ibtable.Locate xy > 10
Danke schon mal das werde ich doch auch gleich mal testen
und gibt es bei where die üblichen and, or, ... |
AW: ibtable.Locate xy > 10
versuch macht klug ;-)
|
AW: ibtable.Locate xy > 10
ich versuche schon ich mags nicht sagen wie lange
Delphi-Quellcode:
geht nicht
Select * from esdat where Upper(ESDDIAG) = upper('%Eintrag%')
Delphi-Quellcode:
geht
Select * from esdat where Upper(ESDDIAG) = '%EINTRAG%'
die Funktion Upper macht die % kaputt na sowas ein Elend das probieren |
AW: ibtable.Locate xy > 10
Nein es fehlt nur das like
SQL-Code:
Select * from esdat where Upper(ESDDIAG) like upper('%Eintrag%');
|
AW: ibtable.Locate xy > 10
Hallo,
ein bissel anders, aber Stelle dir die Query einfach als mit Table.IndexName vorsortierte Tabelle vor, bei dem Query.Open mit FindKey an den ersten gefundenen Eintrag gesprungen wurde und in der im while schon die Abbruchbedingung drinsteht (erster nicht mehr gültiger Wert). Ist also quasi ein per SetRange eingeschränkte Sicht auf die Tabelle. Übrigens kann mann per BDE auch bei DBase/Paradox mit TQuery auf Tabellen zugreifen. Heiko |
AW: ibtable.Locate xy > 10
Nur ist TQuery bei dBase/Paradox dann über die Tabellen implementiert und bei richtigen DBMS Tables auf Abfragen
|
AW: ibtable.Locate xy > 10
igitt BDE oder paradox ne ne
sowas habe ich erst gar nicht angefangen nativ auf Die DBF Dateien mit Codebase schnell unkompliziert keine Treiber eine DLL und eigene Objekte und Funktionen und alles ist gut... ne Paradox das hatte ich mal ... ne jetzt SQL ist schon gut würde ich sagen ... Da mein Programm sehr Modular aufgebaut ist so konnte ich ziemlich schnell von ibtable auf ibquerry umsteigen ... Aber der Beginn ist ein schei... Danke schon mal aber es kommen bestimmt noch was an fragen ... @hoika Danke ich möchte das ja auch vertehen was zu machen ohne es zu verstehen ist sehr gefährlich finde ich zumindest @mkinzler ich meine ich hatte das Like drinnen sonst hätte das zweite doch nicht funktioniert oder ? Ich denke ich habe es nur falsch rüber kopiert.. |
AW: ibtable.Locate xy > 10
Ich kann nur den Code beurteilen, den du hier eingestellt hast.
Wenn duu Firebird ab 2 einsetzt, würde ich zu einem expression index raten. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz