So legen Sie den Standardwert eines MySQL-Felds fest

So legen Sie den Standardwert eines MySQL-Felds fest

Vorwort:

In MySQL können wir Standardwerte für Tabellenfelder festlegen. Wenn beim Einfügen eines neuen Datensatzes in eine Tabelle einem Feld kein Wert zugewiesen ist, fügt das System automatisch einen Standardwert für dieses Feld ein. Es gibt noch einiges zu den Standardwerten zu wissen. In diesem Artikel erfahren Sie mehr über die Standardwerte von Feldern.

1. Standardwertbezogene Vorgänge

Wir können das Schlüsselwort DEFAULT verwenden, um Standardwerte zu definieren. Standardwerte werden normalerweise in nicht leeren Spalten verwendet, um Fehler beim Eingeben von Daten in die Datentabelle zu vermeiden.

Beim Erstellen einer Tabelle können wir einen Standardwert für eine Spalte festlegen. Das spezifische Syntaxformat lautet wie folgt:

# Formatvorlage <Feldname> <Datentyp> DEFAULT <Standardwert>

# Beispielmysql> CREATE TABLE `test_tb` (
    -> `id` int NICHT NULL AUTO_INCREMENT,
    -> `col1` varchar(50) nicht null DEFAULT 'a',
    -> `col2` int nicht null DEFAULT 1,
    -> PRIMÄRSCHLÜSSEL (`id`)
    ->) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Abfrage OK, 0 Zeilen betroffen (0,06 Sek.)

mysql> Beschreibung test_tb;
+----------+----------+------+-----+---------+----------------+
| Feld | Typ | Null | Schlüssel | Standard | Extra |
+----------+----------+------+-----+---------+----------------+
| id | int(11) | NEIN | PRI | NULL | auto_increment |
| col1 | varchar(50) | NEIN | | ein | |
| col2 | int(11) | NEIN | | 1 | |
+----------+----------+------+-----+---------+----------------+
3 Zeilen im Satz (0,00 Sek.)

mysql> in test_tb (col1) Werte einfügen ('fdg');
Abfrage OK, 1 Zeile betroffen (0,01 Sek.)

mysql> Werte in test_tb (col2) einfügen (2);
Abfrage OK, 1 Zeile betroffen (0,03 Sek.)

mysql> wähle * aus test_tb;
+----+------+------+
| ID | Spalte1 | Spalte2 |
+----+------+------+
| 1 | fdg | 1 |
| 2 | ein | 2 |
+----+------+------+
2 Zeilen im Satz (0,00 Sek.)

Aus den obigen Experimenten können wir ersehen, dass, wenn der Standardwert für das Feld festgelegt ist, beim Einfügen von Daten der Standardwert verwendet wird, wenn der Wert des Felds nicht angegeben ist.

Es gibt noch weitere Vorgänge mit Standardwerten, wie etwa das Ändern von Standardwerten, das Hinzufügen von Standardwerten, das Löschen von Standardwerten usw. Schauen wir uns an, wie das funktionieren soll.

# Fügen Sie ein neues Feld hinzu und legen Sie den Standardwert fest. alter table `test_tb` add column `col3` varchar(20) not null DEFAULT 'abc';

# Ändern Sie den ursprünglichen Standardwert. Alter Table „test_tb“. Alter Column „col3“. Setze Standardwert „3a“.
Tabelle „test_tb“ ändern, Spalte „col3“ ändern „col3“ varchar (20) nicht null DEFAULT „3b“;
Tabelle „test_tb“ ändern. Spalte „col3“ ändern. varchar (20) nicht null. DEFAULT „3c“;

# Löschen Sie den ursprünglichen Standardwert. Alter Table „test_tb“ Alter Column „col3“ Drop Default.

# Standardwert erhöhen (ähnlich wie bei Änderung)
Tabelle „test_tb“ ändern, Spalte „col3“ ändern, Standard „3aa“ festlegen;

2. Einige Verwendungsvorschläge

Tatsächlich können nicht nur nicht leere Felder Standardwerte festlegen, sondern auch normale Felder können Standardwerte festlegen. Es wird jedoch im Allgemeinen empfohlen, Felder auf nicht leer zu setzen.

mysql> Tabelle „test_tb“ ändern, Spalte „col4“ hinzufügen, varchar (20) DEFAULT „4a“;
Abfrage OK, 0 Zeilen betroffen (0,12 Sek.)
Datensätze: 0 Duplikate: 0 Warnungen: 0

mysql> Beschreibung test_tb;
+----------+----------+------+-----+---------+----------------+
| Feld | Typ | Null | Schlüssel | Standard | Extra |
+----------+----------+------+-----+---------+----------------+
| id | int(11) | NEIN | PRI | NULL | auto_increment |
| col1 | varchar(50) | NEIN | | ein | |
| col2 | int(11) | NEIN | | 1 | |
| col3 | varchar(20) | NEIN | | 3aa | |
| col4 | varchar(20) | JA | | 4a | |
+----------+----------+------+-----+---------+----------------+
5 Zeilen im Satz (0,00 Sek.)

In der Projektentwicklung werden einige Felder mit Standardwerten immer noch häufig verwendet, z. B. ist der Standardwert die aktuelle Zeit, der Standardwert wird nicht gelöscht, der Standardwert eines bestimmten Status ist 1 usw. In der folgenden Tabelle sind einige häufig verwendete Standardwertfelder kurz dargestellt.

Tabelle „default_tb“ erstellen (
  `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT 'Primärschlüssel automatisch inkrementieren',
  ...
  `Land` varchar(50) nicht null DEFAULT 'China',
  `col_status` tinyint nicht null STANDARD 1 KOMMENTAR '1: Was stellt es dar? 2: Was stellt es dar …',
  `col_time` datetime NICHT NULL STANDARD '2020-10-01 00:00:00' KOMMENTAR 'Um wie viel Uhr',
  `is_deleted` tinyint not null DEFAULT 0 COMMENT '0: Nicht gelöscht 1: Gelöscht',
  `create_time` Zeitstempel NICHT NULL STANDARD CURRENT_TIMESTAMP KOMMENTAR 'Erstellungszeit',
  `update_time` Zeitstempel NICHT NULL STANDARD CURRENT_TIMESTAMP BEI UPDATE CURRENT_TIMESTAMP KOMMENTAR 'Änderungszeit',
  PRIMÄRSCHLÜSSEL (`id`)
)ENGINE=InnoDB STANDARD-CHARSET=utf8;

Hier müssen wir Sie auch daran erinnern, dass der Standardwert dem Feldtyp entsprechen muss. Wenn ein Feld beispielsweise einen Statuswert darstellt, kann es den Wert 1, 2, 3 usw. annehmen. Dann wird empfohlen, für dieses Feld den Typ tinyint anstelle des Typs char oder varchar zu verwenden.

Aus meiner persönlichen Erfahrung möchte ich einige Hinweise zur Verwendung von Standardwerten zusammenfassen:

Das Festlegen von Standardwerten für Felder ungleich Null kann Einfügefehler verhindern.

Standardwerte können auch auf nullbare Felder festgelegt werden.

Am besten versehen Sie einige Statuswertfelder mit Anmerkungen, die angeben, welchen Status ein bestimmter Wert repräsentiert.

Der Standardwert muss mit dem Feldtyp übereinstimmen.

Zusammenfassen:

In diesem Artikel geht es hauptsächlich um das Wissen über die Standardwerte von MySQL-Feldern. Er ist relativ einfach und leicht zu verstehen. Ich hoffe, Sie können etwas daraus lernen.

Oben finden Sie ausführliche Informationen zum Festlegen des Standardwerts von MySQL-Feldern. Weitere Informationen zum Standardwert von MySQL-Feldern finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So weisen Sie Feldern bei der MySQL-Abfrage Standardwerte zu
  • In der MySQL-Befehlszeile ein Feld zur Tabelle hinzufügen (Feldname, ob es leer ist, Standardwert)
  • MySQL-Tabellenfeld-Standardwert festlegen (grafisches Tutorial und auf Details achten)
  • MySQL-Tabellenfeld Zeiteinstellung Standardwert

<<:  Drei Möglichkeiten zum Implementieren eines Textfarbverlaufs in CSS

>>:  Detaillierte Erläuterung der Verwendung der Drag & Drop-Zoom-Komponente für Vue-Bilder

Artikel empfehlen

Erklärung und Beispielverwendung von 4 benutzerdefinierten Anweisungen in Vue

Vier praktische Vue-Custom-Anweisungen 1. V-Wider...

Webdesign-Tipps: Einfache Regeln für das Seitenlayout

Wiederholung: Wiederholen Sie bestimmte Seitendes...

So ändern Sie den Hostnamen in Linux dauerhaft

Wenn Sie Ihren Hostnamen ändern möchten, können S...

Element Plus implementiert Affix

Inhaltsverzeichnis 1. Komponenteneinführung 2. Qu...

CSS zum Erzielen des Bildschwebens mit der Maus-Falteffekts

CSS zum Erzielen des Bildschwebens mit der Maus-F...

Details zu benutzerdefinierten Vue3-Anweisungen

Inhaltsverzeichnis 1. Benutzerdefinierte Anweisun...

So berechnen Sie die Bildrate FPS von Webanimationen

Inhaltsverzeichnis Standards für flüssige Animati...

So fügen Sie Anführungszeichen in HTML-Titel ein

<a href="https://www.jb51.net/" titl...

CSS Houdini erzielt einen dynamischen Welleneffekt

CSS Houdini gilt als die aufregendste Innovation ...

Implementierung eines MySQL-Gemeinschaftsindex (zusammengesetzter Index)

Gemeinsamer Index Die Definition des gemeinsamen ...