Ranglisten mit Sql-Datenbank erstellen

  • Also damit ich ein Update machen kann, muss ich jedem Feld wo ich ein Update der Daten machen möchte einen Unique-Schlüssel geben?

  • Nein.
    Aber jede Tabelle sollte einen eindeutigen Ident besitzen.
    Normalerweise ist das ein Feld:

    Code
    1. `id` UNSIGNED INT NOT NULL AUTO_INCREMENT PRIMARY KEY


    und nochmal zur besseren Übersicht:

    Code
    1. `id` -- name der spalte
    2. UNSIGNED INT -- integer (ganze zahl) (UNSIGNED bedeutet keine vorzeichen - also "kein minus", nur positive zahlen)
    3. NOT NULL -- kein datensatz darf in diesem feld den wert NULL (nicht gesetzt) besitzen
    4. AUTO_INCREMENT -- ~"zähle diesen wert automatisch hoch"
    5. PRIMARY KEY -- dieses feld ist der primäre schlüssel, also eine eindeutige id


    "ON DUPLICATE KEY UPDATE" greift hier immer dann, wenn Du ein INSERT auf eine `id` versuchst, die es bereits gibt.
    Aber auch
    wenn Du zB ein Feld `name` auf den Index-Type "UNIQUE" (einzigartig) stellst.

  • also da ich ein id-feld hab, dann kann ich das ja benutzen... oder?





    Muss ich dann noch die id abfragen, oder ?!

    Dieser Beitrag wurde bereits 2 Mal editiert, zuletzt von flo96 ()

  • Hallo,


    danke für den Tipp, habe ich eben ausprobiert, dann schreibt er mir die Fehlermeldung, (die von mir gewählte) wenn das Eintragen nicht funktioniert hat "Es konnte leider keine Verbindung zur Datenbank hergestellt werden!"


    Außerdem hab ich mal den hier eingesetzt:
    [PHP]<?php error_reporting(E_ALL); ?>[/PHP]


    und der spukt mir das hhier aus:



    Was hat das nun auf sich?


    wie muss ich das mit dem mysqli machen?



    UPDATE:


    Das mit dem mysqli habe ich nun erledigt... aber warum kommt dann die Fehlermeldung?

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von flo96 ()


  • Die letztere...
    "Es konnte leider keine Verbindung zu Datenbank hergestelt werden"

  • ja Moment das hier ist doch nur für im SQL oder?



    wie wäre der passende PHP-Snippet dazu?


    also wie mache ich das dann in meinem bsp?