2 Stimmen

Sollte ich eine Rails-Ganzzahl oder eine Zeichenfolge für diese Zahl verwenden?

In meiner Rails 3-Anwendung erstelle ich eine Book Modell, das eine ISBN Spalte. Diese ISBN Wert ist eine Zahl mit 13 Zeichen. Welchen Typ sollte ich verwenden, um die ISBN Spalte? Sollte ich eine :integer o un :string ? Was ist die maximale Größe eines Integers in Rails?

rails g scaffold Book title:string isbn:integer

4voto

rjk Punkte 1432

Die maximale Größe der Ganzzahl hängt von der verwendeten Datenbank ab. Bei MySQL sind es 2147483648 (2^31, da es sich um eine Ganzzahl ohne Vorzeichen handelt). Ich würde empfehlen, die ISBN als Zeichenkette zu speichern (wahrscheinlich ein CHAR(13), wenn möglich).

2voto

Rohit Punkte 5521

ISBN-Nummern enthalten auch Zeichen, z. B. Bindestriche (-), die man natürlich nicht in ganzzahliger Form speichern kann. Daher würde ich Ihnen empfehlen, eine Zeichenkette zu verwenden.

0voto

juliet Punkte 175

ISBN Dinge wie diese ISBN 978-7-111-27687-6 Daher ist String offensichtlich eine gute Wahl.

0voto

yorch Punkte 6685

Ich halte es für eine gute Faustregel, numerische Felder zu verwenden, wenn Sie mathematische Operationen mit den Feldern durchführen müssen (oder wenn die Möglichkeit besteht, dass Sie dies irgendwann tun werden). Wenn nicht, ist es ein sehr guter Kandidat für eine Zeichenfolge.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X