Verwendung von TQuery
-
ähm, wie zähle ich denn, wieviel einträge in einer tabelle vorhanden sind?
die tabelle ist ja oben gezeigt.
Query1 -> FieldByName("bmp_name")
also wie zähle ich hier die einträge?
einfach ein Count dahinter tut es sicher nicht.
thx
Bj
-
Also, ein bisschen SQL lernen wäre nicht schlecht!!!!
select count(bmp_name) from .....
Gruß Rainer
-
vielleicht eine dumme frage, aber:
wo trage ich diese sql anwesung denn dann ein?
oder einfach in den code klatschen?
in form von:
int bla = select (count) ...
?
thx
Bj
-
unf falls ich es in die Query Kompo eintrage muss, wie rufe ich das ergebnis daraus ab?
-
na in deine Query1
Query1 ausführen
count rausfindenQuery1 mit neuem SQL String füttern
deine schleife abarbeiten
-
Bj schrieb:
unf falls ich es in die Query Kompo eintrage muss, wie rufe ich das ergebnis daraus ab?
Query1->SQL->Add("SELECT COUNT(*) AS CN FROM MEINETABELE");
Query1->Open();
int count = Query1->FieldByName("CN")->AsInteger;
-
Query1 ausführen -> was soll das heißen?
count rausfinden?
meinst du damit diese zeile bei SQL in die Query schreiben?:
select count ("bmp_name") from vapbitmap
ist diese zeile richtig?und wie bekomme ich nun diesen wert count?
tut mir leid, aber wie gesagt, ich bin anfänger und möchte das einfach verstehen.
-
hi,
kleiner TipQuery1->RecordCount();
und noch ein Tip schau mal öfter in die Borland Hilfe rein
Mfg
VergissEs
-
ok danke.
und nochwaS:
was bedeutet denn jetzt das CN.
es geht hier um alle bilddateien, müsste dann dort statt CN = "bmp_name" stehen?thx roman
-
VergissEs schrieb:
hi,
kleiner TipQuery1->RecordCount();
und noch ein Tip schau mal öfter in die Borland Hilfe rein
Mfg
VergissEsgeht nicht, weil es wird erst dann was vernünftiges angezeigt, wenn dei query zu ende durchgelaufen ist.
-
Bj schrieb:
was bedeutet denn jetzt das CN.
das ist einfach x-belibeger name, alias fur deine "count(*)" spalte. damit du die felder der query auch über einen namen ansprechen kannst
-
Bj schrieb:
wo trage ich diese sql anwesung denn dann ein?
Hallo?!? Wie kommst du denn an die Datensätze, wenn man fragen darf?!? Die stehen bestimmt auch nicht einfach so in "Query1" oder?
-junix
-
hehe
ich glaube mich würde das auch wütend machen wenn so ein neuling solch "anscheinend" dumme fragen stellt.aber das ist so:
-> Bj bekam eine aufgabe!
-> Bj sagte den aufgaben-geber: ich habe noch nie mit sql oder datenbanken
im Builder gearbeitet
-> die aufgaben-geber gaben mir danach ein "gerüst", bei dem sie die sql
anweisung für die Datensätze schon eingetragen hatten
-> Bj wollte jetzt aber erstmal überhaupt das ganze Prinzip verstehen, wie
man auf die datenbank zugreift usw....du musst wissen, ich stehe hier jetzt noch vor einem berg, der reisengross (zu gross) zu sein scheint, und -noch- kann ich wenig alleine rausfinden.
deshalb stelle ich all die fragen,d amit ich nach einiger zeit einen kleinen anfang verstehe und dann selber dinge (wie sql-befehle) lernen kann!
thy
Bj
-
Ja, aber, aber, wenn dir einer ja schonmal ein Beispiel vorgeproggt hat, wie man Datensätze mittels SQL abruft, wieso schaust du dir dann nicht seinen Quelltext an und probierst mal, ob du sein Beispiel adaptieren kannst? (-> Damit ist der Lerneffekt nämlich mit Abstand am grössten)
-junix
-
nein, also er hat mir nur so ein gerüst gegeben, welches die einträge einfach nur aufgelistet hat.
und wie soll ein anfänger damit was anfangen?
da bräuchte ich einfach hilfe von einem lehrernaja, so langsam komme ich ja rein.
aber:@XQgene
er schrieb:
Query1->SQL->Add("SELECT COUNT(*) AS CN FROM vapbitmap");
Query1->Open();
int count = Query1->FieldByName("CN")->AsInteger;so habe ich diese zeilen in meinem code, doch es kommt eine exception:
Allgeiner SQL Fehler: Token unknwon - line 2, char -1 SELECT...
-
welche datenbank benutzt du?
-
informix
das meintest du doch oder?
-
ja, wenn das eine datenbank ist.
wenn es so ist, dann soll auch eine sql referenz für die db geben. schau mal da rein, ob z.b. as[b] bekkant ist oder [b]count
oder lasse enfach as weg. die meinsten db können das auch:
select count() cn from tabelle
oder
select count() 'cn' from tabelle
oder
select count(*) as 'cn' from tabellealso doku ===>
-
Query1->SQL->Add("SELECT COUNT(*) CN FROM vapbitmap");
-> ExceptionQuery1->SQL->Add("SELECT COUNT(*) 'CN' FROM vapbitmap");
-> ExceptionQuery1->SQL->Add("SELECT COUNT(*) as CN FROM vapbitmap");
-> ExceptionQuery1->SQL->Add("SELECT COUNT(*) as 'CN' FROM vapbitmap");
-> Exceptionspielt es eine rolle das select gross geschrieben wird?
naja, werde es einfach mal klein probieren.also die bisherige anweisung die in SQL der Query1 steht ist:
select * from vapbitmap order by bmp_name...
thx
BJ
-
1. hast du vor deinem Add die alte sql anweisung aus query gelöscht?Query1->SQL->Clear();
Query1->SQL->Add("select count(*) as cn from vapbitmap");
Query1->SQL->Open();2. geht es so?
select count(*) from vapbitmap