Ergebnis 1 bis 12 von 12

Thema: SQL ; Kardinalität eines Primär Schlüssels mit PHP auslesen

  1. #1

    SQL ; Kardinalität eines Primär Schlüssels mit PHP auslesen

    Hallo ,

    Ich würde ja den Code von PHPmyADMIN durchwühlen wenn das nett so verflixt viele Codezeilen hätte darum frage ich hier nach wie man die Kardinalität eines Primär Schlüssels mit PHP auslesen aus wie weit der auto_increment ist.

    Ich hoffe jemand kennt diesen code den IMO will ich mich nett durch phpmyadmin durchwühlen ist soviel Arbeit ^^°

    Mfg Dadie.

  2. #2
    In solchen Fällen ist es hilfreich, wenn man die MySQL-Dokumentation zu Rate zieht, die sich - wenig überraschend - auf mysql.com findet (im Bereich "Developer Zone").

    Der Befehl, den du brauchst, ist SHOW INDEX FROM tbl_name [FROM db_name].

  3. #3
    thx nur irgentwie zeigt er mir nix an o_O

    PHP-Code:
    $test mysql_query ("SHOW INDEX FROM user $db") ;
    echo 
    $test 
    Nur angezeigt wird Nix -.-

  4. #4
    Fehlt da nicht ein mysql_fetch_array oder ähnliches?

    Nebenbei, Kardinalitäten bezeichnen nicht den Stand des auto_increament zählers, Kardinalitäten kommen bei einem ER-Diagramm vor und bezeichnen wie die Relation zwischen zwei Entitäten aussehen.

  5. #5
    Zitat Zitat von Latency
    Fehlt da nicht ein mysql_fetch_array oder ähnliches?

    Nebenbei, Kardinalitäten bezeichnen nicht den Stand des auto_increament zählers, Kardinalitäten kommen bei einem ER-Diagramm vor und bezeichnen wie die Relation zwischen zwei Entitäten aussehen.
    1,Nunja das mysql_fetch_array hilft insofern nciht weil die Variable ja Leer ist wie ich es sage das ergebniss von mysql_query ("SHOW INDEX FROM user $db")
    Ist Nichts leer nada unter PHP my Admin Zeigt er mir da dann viele daten an unteranderrem auch die Kardinalität

    2,Verklag die Typen von Phpmyadmin da steht dick und fett

    Indizes:
    Name+++++++++Typ++++++Kardinalität++++Aktion++++++++++Feld
    PRIMARY+++PRIMARY+++++++3+++++ Bearbeiten+Löschen+++id

  6. #6
    Zitat Zitat von Latency
    Fehlt da nicht ein mysql_fetch_array oder ähnliches?

    Nebenbei, Kardinalitäten bezeichnen nicht den Stand des auto_increament zählers, Kardinalitäten kommen bei einem ER-Diagramm vor und bezeichnen wie die Relation zwischen zwei Entitäten aussehen.
    Kardinalität === Mächtigkeit == "die Anzahl der Elemente" einer endlichen oder unendlichen Menge. Elementare Mengenlehre. In ER-Diagrammen bezeichnet die Kardinalität die Mächtigkeit der Menge der an einer Beziehung beteiligten Gegenstände; in MyISAM-Tabellen bezeichnet es die Mächtigkeit der Menge der einzigartigen Einträge.
    Die Kardinalität einer Tabelle ist mit dem auto_increment-Zähler identisch, wenn keine gleichen Werte vorkommen (können).



    @dadie: Hm, merkwürdig... In PMA funktioniert es und außerhalb von PMA nicht?

  7. #7
    Dieser Code funktioniert wurderbar, wenn eine Datenbank mit der Tabelle "user" ausgewählt wurde:
    PHP-Code:
    $test mysql_query ("SHOW INDEX FROM user");
    while(
    $row mysql_fetch_assoc($test))
    {
        foreach(
    $row  AS $var)
        {
            echo 
    $var."\t";
        }
        echo 
    "\n";

    Erstellt eine wunderbare Tabelle (mit Tabs).

  8. #8
    aha nun funtz es ja imo noch nett perfekt aber irgentwie eine Frage hätte ich dann noch

    $row ist ja ein Array nur wie heisst der teil wo Nur die Zahl drin gepseichert ist ?

  9. #9
    §doof
    Das ist der falsche MySQL-Code!
    Der richtige Code müsste lauten SHOW TABLE STATUS LIKE 'table';
    Im Array lässt sich der Auto_increment-Wert im Index "Auto_increment" finden

    EDIT: Du musst natürlich 'counter' durch deine Tabelle ersetzen...

    Geändert von dead_orc (18.03.2005 um 16:10 Uhr)

  10. #10
    Zitat Zitat von getöteter_ork
    §doof
    Das ist der falsche MySQL-Code!
    Der richtige Code müsste lauten SHOW TABLE STATUS LIKE 'counter';
    Im Array lässt sich der Auto_increment-Wert im Index "Auto_increment" finden
    bei SHOW TABLE STATUS LIKE 'counter'; sagt PMA ausgefürt sehen tuh ich aber nix und im Code ist dann die Variable wieder leer und wenn ich den alten code nutze und dem Arrary
    kann ich die Auto_increment auch nett entlocken mit ['Auto_increment'] o_O

  11. #11
    Laut MySQL Doc müsste "SHOW INDEX..." eine Tabelle mit dem Feld "Cardinality" zurückliefern. Dieses sollte den Richtigen wert haben, ansonsten selber nochmal in der MySQL Doc nachlesen, Jeez war ja schon so nett und hat den richtigen Link oben hingeschrieben.

  12. #12
    thx @ all ihr habt es geschafft lasst euch alle knudeln ^^

    Dadie Latency
    Dadie getöteter_ork
    Dadie Jesus_666

    Dadie getöteter_ork
    Dadie Latency
    Dadie Jesus_666

    Dadie Jesus_666
    Dadie Latency
    Dadie getöteter_ork

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •