Was ist der Unterschied (wenn angewendet zu meinem code) zwischen INT(10) INT(12)?
Wenn ich mit INT(12) vs INT(10) oder INT(8) was wird das eigentlich in Bezug auf mich verwenden im code?
(Dies ist ein spin-off einer Vorherige Frage) ich Lesen Sie die Handbücher durch und ich glaube, ich verstehe, was Sie sagen, aber ich weiß wirklich nicht, wie es anwenden würde, um meine php/mysql Programmieren.
Kann mir jemand ein Beispiel geben, wo das tatsächlich eine Rolle?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kurze Antwort: es gibt keinen Unterschied.
Breite der Darstellung übergeben wird, zurück in die "meta-Daten". Es ist von der Anwendung ab, es zu nutzen. Es ist meist einfach ignoriert. Ich glaube nicht, dass Sie es bekommen können, indem Sie die mysql-Funktionen, aber Sie könnten in der Lage sein, um mit einer MySQL-Datenbank über mysqli_fetch_field_direct.
BIGINT
.Den argument-Typ integer-Typen in MySQL hat keine Auswirkung auf die Speicherung von Daten oder die Auswahl von Werten unterstützt, die von jedem Datentyp.
Das argument gilt nur für display-Breite, die können von Anwendungen verwendet werden, wie Jonathan Fingland erwähnt. Es kommt auch bei Verwendung in Kombination mit der
ZEROFILL
option:Sehen, wie
ZEROFILL
stellt sicher, dass die Daten mit Nullen aufgefüllt, um zumindest die Anzahl der Ziffern gleich der Ganzzahl-argument.Ohne
ZEROFILL
werden die Daten Raum-gepolsterte, aber da Räume oft getrimmt sowieso, es ist schwerer zu erkennen, der Unterschied.Beeinflussen, was hat Sie auf Ihre PHP-code? Keine. Wenn Sie brauchen, um die Ausgabe einspaltig Daten oder space-pad-oder null-pad-Werte, es ist flexibler zu bedienen
sprintf()
,Sollten Sie nicht haben, etwas zu ändern, wie es hat keine Auswirkungen auf die Daten zurückgegeben. Die Informationen können von Anwendungen verwendet werden, die es benutzen wollen.
Sehen http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html
(Hervorhebung von mir)