Re: Ergänzung - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Sander (8133 Beiträge) am Mittwoch, 3.Januar.2001, 00:07.
    Re: Ergänzung

      Und wenn du es so gestaltest wie Stefan es beschrieben hat, dauert die Abfrage nicht so lang, weil nur ein Datensatz gelesen wird. Bei dir wird jeder Datensatz durchsucht, was Rechenleistung und Zeit kostet (bei 100000 Einträgen? :-) ).


      Sander


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Oliver (172 Beiträge) am Dienstag, 2.Januar.2001, 18:23.
    Gesamtanzahl der Datenbankeinträge ausgegeben

      Ich werde nicht schlau!? Wie kann ich denn die Anzahl der Gesamteinträge einer Datenbank ausgeben?
      Beispiel: Zur Zeit "2563" Einträge

      Danke für Tips

     Antworten

    Beitrag von Stefan Krupop (311 Beiträge) am Dienstag, 2.Januar.2001, 19:02.
    Re: Gesamtanzahl der Datenbankeinträge ausgegeben

      Folgenden Code einfach in die Seite einfügen und den Namen der Datenbank angeben:

      Die Datenbank enthält bisher <b><loop db=---Datenbankname--- range=0,1>$_amount_all</loop></b> Einträge.

      Stefan Krupop

     Antworten

    Beitrag von Ruben (403 Beiträge) am Dienstag, 2.Januar.2001, 19:22.
    Re: Gesamtanzahl der Datenbankeinträge ausgegeben

      Ich glaube, das "range" kann entfallen, allerdings nur, wenn man
      <loop db=DeineDatenbank></loop>
      Die Datenbank enthält bisher <b><$_amount_all</b> Einträge
      
      macht.
      So langsam komme ich auch dahinter, es ist halt immer gut, trial-and-error zu praktizieren und die Infos der "Profis", wie Stefan einer ist, zu lesen.

     Antworten

    Beitrag von Ruben (403 Beiträge) am Dienstag, 2.Januar.2001, 19:09.
    Re: Gesamtanzahl der Datenbankeinträge ausgegeben

      Sollte wohl mit einer der Spezialvariablen gehen, steht in der Doku
      $_amount: Anzahl Datensätze die beim letzten Abruf tatsächlich geholt wurden. 
      $_amount_query: Anzahl Datensätze die beim letzten Abruf ohne "range" geholt worden wären. 
      $_amount_all: Anzahl Datensätze die in der zuletzt genutzten Datenbank insgesamt enthalten sind. 
      
      Habs zwar selber noch nicht probiert, aber wird schon gehen, stehen so schon lange in der Doku.

     Antworten

    Beitrag von Ruben (403 Beiträge) am Dienstag, 2.Januar.2001, 19:18.
    Ergänzung

      Haut hin, habs grad mal getestet.
      Mit
      <loop db=DeineDatenbank></loop>
      <p>Es sind $_amount_all Datensätze drin</p>
      

      geht es einwandfrei (habe ne Testdatenbank mit 385 recht langen Datensätzen)

     Antworten

    Beitrag von Sander (8133 Beiträge) am Mittwoch, 3.Januar.2001, 00:07.
    Re: Ergänzung

      Und wenn du es so gestaltest wie Stefan es beschrieben hat, dauert die Abfrage nicht so lang, weil nur ein Datensatz gelesen wird. Bei dir wird jeder Datensatz durchsucht, was Rechenleistung und Zeit kostet (bei 100000 Einträgen? :-) ).


      Sander

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 3.Januar.2001, 14:51.
    Re: Ergänzung - Sander hat völlig recht!! ;-)

      Jups, das ist tatsächlich eine ziemliche Rechenzeitverschwendung (und so unnütz), weil ja die komplette Datenbank durchlaufen wird...

      Also wenn schon, dann bitte mit "range=0,1"

      Noch richtiger wäre sowas:

      <perl>
      init "datenbank";
      </perl>
      Es sind $_amount_all Einträge in der Datenbank...
      

      (Hoffe, das klappt, habs nicht getestet)

     Antworten

    Beitrag von Ruben (403 Beiträge) am Donnerstag, 4.Januar.2001, 15:16.
    Kommt davon, wenn man keine Ahnung hat

      Sorry, aber das kommt davon, wenn man keine Ahnung hat, ich hatte mal so rumgebastelt, um die Anzeige der Anzahl Datens. hinzukriegen.
      Mit dem init geht bei mir nicht, mit range=0,1 haut es hin. Ist mir bloß nicht klar, woher die Variable $_amount_all ohne die gesamte DB zu durchlaufen weiß, wieviele DS da sind.
      Ich war davon ausgegangen, daß die erst "eingezählt" werden und bei range=0,1 echt nur der erste DS durchlaufen, eingelesen und gezählt wird. Aber irgendwie hab ich da offensichtlich nen gedanklichen Hänger.
      Na dann
      Ruben
      (also daß dann auch bspw. get next nicht hinhaut)

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 5.Januar.2001, 17:50.
    Re: Kommt davon... oder wenn nicht ausreichend dokumentiert ist ;-)

      Mmh, mit dem init müsste ich noch mal checken, kann sein, dass $_amount_all garnicht gesetzt wird...

      Aber die Anzahl der Datensätze lässt sich relativ einfach feststellen (über die Index-Datei der Ids, einfach die Grösse nehmen, falls es jemand interessiert , ist aber nicht weiter wichtig ;-) ), da muss nicht die ganze DB durchlaufen werden...

      Das wäre alles aber natürlich auch wieder ein Fall für die Doku, das alles genauer zu beschreiben ;-)

     Antworten

    Beitrag von Schuby (25 Beiträge) am Sonntag, 7.Januar.2001, 03:40.
    Re: Gesamtanzahl der Datenbankeinträge ausgegeben

      Hallo Zusammen
      Ich bin auch einer der neuen hier und habe eigentlich keinen Blassen schimmer von Datenbanken. Habe mir mit Hilfe der Dokumentation, Forum und diversen anderen Möglichkeiten die es hier gibt schon eine Datenbank aufgebaut. Wahrscheinlich ein wenig zu kompliziert Programiert, aber sie funktioniert. Also als erstes mal DANKE an alle die in diesen Seiten so aktiv ihre Hilfe zu Verfügung stellen.

      Nun hatte ich das gleiche Problem mit der Ausgabe der Gesamtzahl. Und habe folgende Lösung dafür angewandt.
      Was mich nun noch Interesiert ist, ob bei dieser Möglichkeit auch die Gesamte Datenbank durchsucht wird.
      <loop db=name sort=- Id==#>
      $_id
      </loop>
      

      Kurzes Ja oder Nein reicht mir schon.
      Danke im Vorraus

     Antworten

    Beitrag von Andreas (396 Beiträge) am Sonntag, 7.Januar.2001, 10:50.
    wohl eher nicht (war: Gesamtanzahl der Datenbankeinträge ausgegeben)

      Hmm,

      ich glaube nicht, daß man den Ansatz über die Id's empfehlen kann. Denn sobald ein Eintrag gelöscht wird, stimmt die größte Id (eigentlich: "größte Id" + 1) nicht mehr mit der Gesamtzahl überein. Zumindest bis zu einer Reorganisation - zu viele Unwägbarkeiten für meinen Geschmack...

      Gruß, Andreas

     Antworten


     
 Liste der Einträge von 66600 bis 66750:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.09s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!