So fügen Sie Daten zur thinkphp-Datenbank hinzu

藏色散人
Freigeben: 2022-01-10 11:36:38
Original
4359 Leute haben es durchsucht

So fügen Sie Daten zur thinkphp-Datenbank hinzu: 1. Fügen Sie ein Datenelement über die Einfügemethode hinzu. 2. Verwenden Sie die Datenmethode in Verbindung mit dem Einfügen, um ein Datenelement hinzuzufügen. 3. Übergeben Sie mehrere Datenelemente an insertAll Methode der Db-Klasse.

So fügen Sie Daten zur thinkphp-Datenbank hinzu

Die Betriebsumgebung dieses Artikels: Windows 7-System, Thinkphp v5.1-Version, Dell G3-Computer.

Wie füge ich Daten zur thinkphp-Datenbank hinzu?

Ein Datenelement hinzufügen

Verwenden Sie die Einfügemethode der Db-Klasse, um Daten an die Datenbank zu senden.

$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::name('user')->insert($data);
Nach dem Login kopieren

Die Einfügemethode erfolgreich gibt die Anzahl erfolgreich zurück hinzugefügte Elemente und gibt normalerweise 1 zurück. Oder verwenden Sie die Datenmethode mit Einfügen.

$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::name('user')
    ->data($data)
    ->insert();
Nach dem Login kopieren

Wenn Ihre Datentabelle kein foo- oder bar-Feld enthält, wird eine Ausnahme ausgelöst.

Wenn Sie keine Ausnahme auslösen möchten, können Sie die folgende Methode verwenden:

$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::name('user')->strict(false)->insert($data);
Nach dem Login kopieren

Der Wert des nicht vorhandenen Felds wird direkt verworfen.

Wenn es sich um eine MySQL-Datenbank handelt, wird das Schreiben durch Ersetzen unterstützt, zum Beispiel:

$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::name('user')->insert($data, true);
Nach dem Login kopieren

Wenn Sie nach dem Hinzufügen von Daten den automatisch inkrementierten Primärschlüssel der neuen Daten zurückgeben müssen, können Sie die Methode insertGetId verwenden, um Daten hinzuzufügen und Geben Sie den Primärschlüsselwert zurück:

$userId = Db::name('user')->insertGetId($data);
Nach dem Login kopieren

InsertGetId-Methode hinzugefügt. Die Daten geben den automatisch inkrementierten Primärschlüssel der hinzugefügten Daten erfolgreich zurück.

Mehrere Datenteile hinzufügen direkt zur insertAll-Methode der Db-Klasse hinzugefügt

$data = [
    ['foo' => 'bar', 'bar' => 'foo'],
    ['foo' => 'bar1', 'bar' => 'foo1'],
    ['foo' => 'bar2', 'bar' => 'foo2']
];
Db::name('user')->insertAll($data);
Nach dem Login kopieren
insertAll-Methode fügt Daten erfolgreich hinzu und gibt die erfolgreich hinzugefügte Anzahl von Elementen zurück

Wenn es sich um eine MySQL-Datenbank handelt, wird das Ersetzen des Schreibens unterstützt, zum Beispiel:

$data = [
    ['foo' => 'bar', 'bar' => 'foo'],
    ['foo' => 'bar1', 'bar' => 'foo1'],
    ['foo' => 'bar2', 'bar' => 'foo2']
];
Db::name('user')->insertAll($data, true);
Nach dem Login kopieren

Sie können auch verwenden die Datenmethode

$data = [
    ['foo' => 'bar', 'bar' => 'foo'],
    ['foo' => 'bar1', 'bar' => 'foo1'],
    ['foo' => 'bar2', 'bar' => 'foo2']
];
Db::name('user')->data($data)->insertAll();
Nach dem Login kopieren

Stellen Sie sicher, dass die Datenfelder, die in Stapeln hinzugefügt werden sollen, konsistent sind

Wenn viele Daten in Stapeln eingefügt werden müssen, können Sie die Aufteilung angeben. Verwenden Sie beim Einfügen von Stapeln die Begrenzungsmethode, um die Menge anzugeben Limit für jede Einfügung.

$data = [
    ['foo' => 'bar', 'bar' => 'foo'],
    ['foo' => 'bar1', 'bar' => 'foo1'],
    ['foo' => 'bar2', 'bar' => 'foo2']
    ...
];
// 分批写入 每次最多100条数据
Db::name('user')->data($data)->limit(100)->insertAll();
Nach dem Login kopieren

Empfohlenes Lernen: „

Die neuesten 10 Thinkphp-Video-Tutorials

Das obige ist der detaillierte Inhalt vonSo fügen Sie Daten zur thinkphp-Datenbank hinzu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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