Sven: Mysql+ Delete

Hi!

Ich bins nochmal. Habe in die Manual geguckt wie man löscht.
Aber...naja das beste ist es ja nicht. Wurde scheiße erklärt da.
Nichts für Anfänger die Manual. Habe folgenden Code:

$res= mysql_query ("DELETE FROM Username");

So, in der Manual steht was von WHERE. Wenn ich es richtig verstanden habe, wenn ich das weglasse löscht er alle Einträge.
Aber leider bekomme ich den Wert "false" zurück. Er löscht nicht, warum?

Währe auch nett, wenn einer mit ein Link zu Mysql Tutorials geben könnte, für anfänger!!

Vielen dank im vorraus.

MFG
Sven!

  1. Hello,

    $res= mysql_query ("DELETE FROM Username");

    So, in der Manual steht was von WHERE. Wenn ich es richtig verstanden habe, wenn ich das weglasse löscht er alle Einträge.
    Aber leider bekomme ich den Wert "false" zurück. Er löscht nicht, warum?

    Da gibt es eine Safety-Einstellung. Die kann man glaube ich in der my.ini machen. Dann wird nichts gelöscht, wenn where fehlt. Und außerdem muss der User, mit dem Du connectest, die Löschrechte haben.

    gib mal das Statement: "show grants for user@host"

    wobei du user und host nur Platzhalter sind

    Währe auch nett, wenn einer mit ein Link zu Mysql Tutorials geben könnte, für anfänger!!

    Musst Du mal die Threads durchgehen. Thomas Luethi hat mir vorhin gerade die wesentlichen Links aus dem MySQL-Manual gepostet.

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
  2. Hi!

    Ich bins nochmal:

    Also löschen mit DELETE FROM News klapt wunderbar!
    aber ich möchte jetzt nur Z.b. 1 oder 2 Zeile löschen.
    Gut, habe es so versucht:

    $res= mysql_query ("DELETE FROM News WHERE ID='1'");

    Aber dann bekomme ich die Meldung:

    Unknown column 'ID' in 'where clause'

    Was bedeutet die? In der Datenbank sind 2 Einträge gespeichert!
    Das es 2 sind, weis ich, weil ich die Datenbank lade.

    Und "ja" ich habe in der Manual geguckt. Da stand das ja so.

    MFG
    Sven!

    1. Hello,

      Also löschen mit DELETE FROM News klapt wunderbar!
      aber ich möchte jetzt nur Z.b. 1 oder 2 Zeile löschen.
      Gut, habe es so versucht:

      $res= mysql_query ("DELETE FROM News WHERE ID='1'");

      Unknown column 'ID' in 'where clause'

      Wie heißen denn die Spalten Deiner Tabelle?

      show columns from News;

      zeigt die Spalten an.

      Liebe Grüße aus http://www.braunschweig.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      1. Hi,

        show columns from news ?? Ich will eine Zeile löschen.

        Also ganz genau sieht meine Tabelle so aus:

        Username   Password   eMail
        Chef16     123456789  sven.der.meister@t-online.de
        blabla     fhgff      fgfgf@ggggg.de

        Mit:

        mysql_query ("DELETE FROM News");

        lösche ich alle Einträge. Ich will aber jetzt nur die 2 Zeile löschen. Das die Tabelle dann so aussieht:

        Username   Password   eMail
        Chef16     123456789  sven.der.meister@t-online.de

        Wie bekommt man das hin?

        MFG
        Sven!

        Hello,

        Also löschen mit DELETE FROM News klapt wunderbar!
        aber ich möchte jetzt nur Z.b. 1 oder 2 Zeile löschen.
        Gut, habe es so versucht:

        $res= mysql_query ("DELETE FROM News WHERE ID='1'");

        Unknown column 'ID' in 'where clause'

        Wie heißen denn die Spalten Deiner Tabelle?

        show columns from News;

        1. Hello,

          Hi,

          show columns from news ?? Ich will eine Zeile löschen.

          Also ganz genau sieht meine Tabelle so aus:

          Username   Password   eMail
          Chef16     123456789  sven.der.meister@t-online.de
          blabla     fhgff      fgfgf@ggggg.de

          Mit:

          mysql_query ("DELETE FROM News");

          lösche ich alle Einträge. Ich will aber jetzt nur die 2 Zeile löschen. Das die Tabelle dann so aussieht:

          Username   Password   eMail
          Chef16     123456789  sven.der.meister@t-online.de

          DELETE FROM News where Username != 'Chef16';

          Und futsch sind alle bis auf den einen...

          Liebe Grüße aus http://www.braunschweig.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          1. Hi,

            hm.... etwas umstädnlich!
            Was ist wenn ich jetzt 1000 Einträge habe und möchte den Eintrag
            524 löschen????

            Hello,

            Hi,

            DELETE FROM News where Username != 'Chef16';

            1. Hi,

              hm.... etwas umstädnlich!
              Was ist wenn ich jetzt 1000 Einträge habe und möchte den Eintrag»» »»

              DELETE FROM News where Username != 'Chef16';

              Schon gut! Mit:

              $res= mysql_query ("DELETE FROM News WHERE Username='Chef16';");

              wird mein Beitrag gelöscht! Das ist dann gut so.

              danke für deine hilfe.

              1. Hello,

                $res= mysql_query ("DELETE FROM News WHERE Username='Chef16';");

                Im Query-String von php KEIN Semikolon am Ende!
                Das braucht man nur auf der Befehlskonsole von MySQL

                Liebe Grüße aus http://www.braunschweig.de

                Tom

                --
                Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
            2. Holla,

              Was ist wenn ich jetzt 1000 Einträge habe und möchte den Eintrag
              524 löschen????

              Dann sollte Deine Tabelle so aussehen:

              ID.....username.......passwort.......email.........
              1......bla............1234...........bla@blubb.de..
              2......blalbl.........2323...........fsdfsdf@fdsdfs.de
              3......fsdfsdf........5435...........poipipo@uioui.net
              usw

              so dass Du in jeder Zeile eine eindeutige ID zuweisen kannst. Und dann wie gehabt:

              DELETE FROM news WHERE ID=3
              das würde dann NUR die Zeile mit der ID 3 löschen

              DELETE FROM news WHERE ID!=3
              das würde dann ALLES ausser die Zeile mit der ID 3 löschen

              MfG
              AndreasN

              --
              Wer lesen kann ist klar im Vorteil