Feldlänge bei INT in bit?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Feldlänge bei INT in bit?

    Hallo,
    irgendwie stehe ich auf dem Schlauch. Wenn man in phpMyAdmin neue Tabellen erstellt und da eine Spalte vom Typ "int" sein soll, dann soll man ja auch die "Feldlänge" eingeben. Ich dachte eigentlich das ist in bit geeinheitet. Also das "int(16) unsigned" eben von 0 bis 65535 geht und z.b. "int(8)" von -128 bis 128.
    Jetzt habe ich aber mal vom WoltLab Burning Board gesehen, dass die ihre Usertabelle, die Userid mit "int(11) unsigned" machen. Aber das wäre doch dann nur von 0 bis zu der id 2047 möglich? Oder sehe/verstehe ich das falsch (wohl ja)?

    Danke im voraus!

  • #2
    int(11) heißt 11 Stellen anzeigen. Der Datentyp int belegt immer 4 Bytes Speicher.

    Steht alles auf http://dev.mysql.com/doc/refman/5.0/...-overview.html und http://dev.mysql.com/doc/refman/5.0/...uirements.html

    Kommentar


    • #3
      Danke.
      Aber da stellt sich mir die Frage: Bei mysql.org steht ja, dass INT von 0-4294967295 geht bzw. -2147483648 bis 2147483647. Und diese Zahlen haben ja nur 10 Stellen...

      Kommentar


      • #4
        OffTopic:
        ... eine Stelle mehr hat noch nie geschadet
        [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

        [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

        [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
        (from here)

        Kommentar


        • #5
          Original geschrieben von kuebel-s
          Aber da stellt sich mir die Frage: Bei mysql.org steht ja, dass INT von 0-4294967295 geht bzw. -2147483648 bis 2147483647. Und diese Zahlen haben ja nur 10 Stellen...
          Nö, -2147483648 hat elf.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Das heisst, dass es nichts größeres gibt als int(11) ?

            Kommentar


            • #7
              Du kannst auch int(12) oder mehr angeben, MySQL wird sich nicht beschweren und würde dir später auch gern 12 oder mehr Stellen anzeigen. Leider werden aber dennoch nur 4 Bytes zum Speichern verwendet ...

              INT[(M)] [UNSIGNED] [ZEROFILL]
              A normal-size integer. The signed range is -2147483648 to 2147483647. The unsigned range is 0 to 4294967295.


              Lesen statt fragen: http://dev.mysql.com/doc/refman/5.0/...-overview.html

              Dort steht auch, dass es sehr wohl etwas größeres als int gibt.
              Zuletzt geändert von onemorenerd; 23.11.2005, 13:51.

              Kommentar

              Lädt...
              X