Heim > Backend-Entwicklung > PHP-Tutorial > javascript - Ist es besser, den Standardwert für ein bestimmtes Feld in einer Datenbanktabelle auf Null, „' oder eine leere Zeichenfolge zu setzen? Auf dem Handy möchte ich einfach leer zurückkommen

javascript - Ist es besser, den Standardwert für ein bestimmtes Feld in einer Datenbanktabelle auf Null, „' oder eine leere Zeichenfolge zu setzen? Auf dem Handy möchte ich einfach leer zurückkommen

WBOY
Freigeben: 2016-08-31 08:54:56
Original
1246 Leute haben es durchsucht

Wenn ein bestimmtes Feld in der Datenbank auf Null gesetzt ist, gibt das mobile Endgerät standardmäßig Null zurück. Wenn ich möchte, dass das mobile Endgerät Null zurückgibt, muss ich ein Urteil fällen.
1. Wenn ich möchte, dass das Mobiltelefon leer zurückkommt, ohne ein Urteil zu fällen, wie soll ich das Tabellenfeld als Standard festlegen?
2. Ist es besser, das Tabellenfeld standardmäßig auf Null, „“ oder „Leere Zeichenfolge“ zu setzen? Sind sie unterschiedlich?

Antwortinhalt:

Wenn ein bestimmtes Feld in der Datenbank auf Null gesetzt ist, gibt das mobile Endgerät standardmäßig Null zurück. Wenn ich möchte, dass das mobile Endgerät Null zurückgibt, muss ich ein Urteil fällen.
1. Wenn ich möchte, dass das Mobiltelefon leer zurückkommt, ohne ein Urteil zu fällen, wie soll ich das Tabellenfeld als Standard festlegen?
2. Ist es besser, das Tabellenfeld standardmäßig auf Null, „“ oder „Leere Zeichenfolge“ zu setzen? Sind sie unterschiedlich?

1: NULL-Wert ('') nimmt keinen Platz ein
2: NULL in MySQL nimmt tatsächlich Platz ein. Offizielle Dokumentbeschreibung:
„NULL-Spalten benötigen zusätzlichen Platz in der Zeile, um aufzuzeichnen, ob ihre Werte NULL sind. Bei MyISAM-Tabellen benötigt jede NULL-Spalte ein Bit zusätzlich, aufgerundet auf das nächste Byte.“ MySQL-Design Es wird empfohlen, beim Erstellen von Tabellen nicht den Standardwert NULL zu verwenden.
Der String-Typ kann standardmäßig auf '' und der int-Typ auf 0 festgelegt werden.
Wenn der Poster feststellen möchte, ob das Feld leer ist, verwenden Sie einfach PHP um es zu verarbeiten

SQL: Verwendung von NULL-Werten vs. Standardwerten

Ist es gut, den Standardwert NULL zu verwenden?
Kein Standardwert vs. NULL vs. 0 in MySQL als Standardwert für Text- und Ganzzahlfelder

Lassen Sie mich mit drei

Diskussionen zu diesem Thema beginnen. Tatsächlich gibt es keinen großen Unterschied, ob man den Standardwert verwendet oder stackoverflow Es gibt keine besonderen Vorteile und Nachteile. NULL

Die Schnittstelle mit dem Mobiltelefon gibt ein Problem zurück. Im Allgemeinen ist der Datenaustausch über die

-Schnittstelle nicht ganz klar, aber es ist sehr restful >. ReferenzJavaeasy setPropertyInclusion

Dies ist, was in „High Performance MySQL“ gesagt wird:

Versuchen Sie NULL zu vermeiden

Normalerweise ist es am besten, die Spalte als NOT NULL anzugeben, es sei denn, Sie müssen wirklich NULL-Werte speichern, wenn die Spalte beim Definieren der MySQL-Tabelle nicht als NOT NULL angegeben wird.

Es ist für MySQL schwieriger zu optimieren, wenn die Abfrage Spalten enthält, die NULL sein können. Da Spalten NULL sein können, sind Indizes, Indexstatistiken und Wertvergleiche komplizierter

Spalten, die NULL sein können, belegen mehr Speicherplatz und erfordern eine spezielle Verarbeitung in MYSQL.

Wenn NULL-fähige Spalten indiziert werden, erfordert jeder Indexdatensatz ein zusätzliches Byte, was sogar dazu führen kann, dass ein Index fester Größe (z. B. ein Index mit nur einer Ganzzahlspalte) im MyISAM-Index eine variable Größe erhält

Im Allgemeinen ist die Leistungsverbesserung, die durch die Änderung einer NULL-fähigen Spalte in NOT NULL erzielt wird, relativ gering, sodass diese Situation beim Optimieren nicht zuerst geändert werden muss, es sei denn, es wird festgestellt, dass dies zu Problemen führen wird

Wenn Sie jedoch vorhaben, einen Index für die Spalte zu erstellen, sollten Sie vermeiden, die Spalte als NULL zu gestalten. Natürlich gibt es Ausnahmen. Beispielsweise verwendet InnoDB ein separates Bit zum Speichern von NULL-Werten, was eine gute Speicherplatzeffizienz für spärliche Daten bietet. Dies gilt nicht für MyISAM.

(Sparse-Daten: bezieht sich darauf, dass viele Werte NULL sind und einige Werte nicht NULL sind)

Ich persönlich denke, es hängt hauptsächlich von Ihrer Positionierung auf Null ab. Wenn es sich bei der Positionierung um einen abnormalen Fehler handelt, der nicht auftreten sollte, wird empfohlen, ihn auf Null zu setzen. Wenn die Positionierung normal und möglich ist, ist es besser um es auf '' zu setzen.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage