Rails 3 Datentypen?

158

Wo finde ich eine Liste der Datentypen, die in Schienen 3 verwendet werden können? (wie Text, Zeichenfolge, Ganzzahl, Gleitkomma, Datum usw.?) Ich lerne immer wieder zufällig über neue, aber ich hätte gerne eine Liste, auf die ich leicht verweisen könnte.

Elliot
quelle

Antworten:

270

Hier sind alle Rails3Datentypen (ActiveRecord-Migration):

: binary
: boolean
: date
: datetime
: decimal
: float
: integer
: primary_key
: referenzen
: string
: text
: time
: timestamp

Quelle

Nicolas Raoul
quelle
4
und: Referenzen für polymorphe Assoziationen. Siehe: api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/…
Ethan
Die Anleitung hat sich geändert. Möglicherweise sollte ein Link zur entsprechenden Dokumentation diese ersetzen.
Harry Moreno
1
@ HarryMoreno: Danke für den Tipp! Ich habe die Referenz aktualisiert. Bitte lassen Sie mich wissen, wenn Sie eine bessere finden.
Nicolas Raoul
Referenzen sind nicht auf polymorphe Assoziationen beschränkt. Und ich würde es nicht als Datentyp zählen.
Pascal
67

Es ist wichtig, nicht nur die Typen zu kennen, sondern auch die Zuordnung dieser Typen zu den Datenbanktypen:

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Beachten Sie beispielsweise, dass wir in MS SQL Server Folgendes verwenden:

  1. die alte "datetime" statt "datetime2"
  2. Dezimal mit der Standardgenauigkeit
  3. text und varchar statt nvarchar
  4. int (winzige int / small int / big int können nicht verwendet werden)
  5. Bild statt BLOB
gotqn
quelle
2
Wie aus diesem Blog zu finden . Die Option tinyint / smallint / bigint kann mithilfe der Option: limit mit: integer festgelegt werden. Ich habe es auf Rails 3 und MySQL getestet, sie funktionieren immer noch, genau wie im Blog gesagt, sie sind ganzzahlig signiert.
RacsO
16

Es kann hilfreich sein, allgemein zu wissen, wofür diese Datentypen verwendet werden:

  • binär - dient zum Speichern von Daten wie Bildern, Audio oder Filmen.
  • boolean - dient zum Speichern von wahren oder falschen Werten.
  • Datum - Speichern Sie nur das Datum
  • Datum / Uhrzeit - Speichern Sie Datum und Uhrzeit in einer Spalte.
  • dezimal - steht für Dezimalstellen.
  • float - steht für Dezimalstellen. ( Was ist der Unterschied zwischen Dezimal und Float? )
  • Ganzzahl - steht für ganze Zahlen.
  • primary_key - eindeutiger Schlüssel, der jede Zeile in einer Tabelle eindeutig identifizieren kann
  • Zeichenfolge - ist für kleine Datentypen wie einen Titel. ( Sollten Sie Zeichenfolge oder Text wählen? )
  • Text - steht für längere Textdaten, z. B. einen Informationsabschnitt.
  • Zeit - ist nur für die Zeit
  • Zeitstempel - zum Speichern von Datum und Uhrzeit in einer Spalte.

Ich hoffe das hilft jemandem! Hier ist auch die offizielle Liste: http://guides.rubyonrails.org/migrations.html#supported-types

lflores
quelle