masukkan rekod

Sisipkan rekod

Terdapat dua sintaks asas untuk memasukkan rekod

Sisipkan sintaks asas satu

QQ截图20161009153143.png

Sisipkan Tatabahasa Asas 2

QQ截图20161009153225.png

Penjelasan

Tatabahasa Asas 1 dan Tatabahasa Asas Perbezaan antara 2 ialah:

1 Untuk penyataan sisipan sintaks asas 1, seberapa banyak nilai yang terdapat dalam jadual mesti disisipkan. Tiada siapa boleh lebih, dan tiada siapa boleh kurang. Jika terdapat nilai lalai dan anda tidak mahu meneruskannya, anda boleh menulis nol.

2. Dalam Sintaks Asas 2, melainkan terdapat medan yang diperlukan, nilai mesti ditulis. Jika anda tidak mahu menulis nilai lalai, anda boleh mengabaikannya. mysql akan melengkapkan nilai lalai secara automatik.

3 Dalam sintaks asas 2, susunan medan pengguna(id, nama pengguna, jantina) ialah susunan nilai.

Andaikan terdapat jadual yang dipanggil jadual pengguna Kami menghuraikan medan, perihalan medan, jenis dan status pilihan dan diperlukan bagi medan tersebut:

QQ截图20161009153254.png

Tulis pernyataan sisipan dalam jadual di atas mengikut sintaks asas:

insert into user values(null,'王开 ','php@163.com',null ,1);

Nota

1 tertib selepas nilai hendaklah konsisten dengan pengisihan medan jadual.

2. Medan dengan nilai lalai tidak perlu ditulis, maka nilai lalai akan digunakan.

3 Jika terdapat nilai lalai atau medan yang boleh dibatalkan dan anda tidak mahu memasukkan nilai tertentu, anda boleh menulis nol.

4. Format data mestilah konsisten dengan format data yang dinyatakan dalam jadual.

Tulis pernyataan sisipan dalam jadual di atas mengikut sintaks asas 2:

insert into user(username,sex) values('王开',1);

Nota

1 Medan dengan ID penambahan automatik tidak perlu memasukkan nilai . Setiap kali ini dimasukkan, Nilai medan akan meningkat secara automatik sebanyak 1.

2. Medan dengan nilai lalai dan nilai yang boleh dibatalkan tidak perlu dihantar

3 Berdasarkan susunan pemasukan pengguna jadual (nama pengguna, jantina)

4. Sintaks asas Yang kedua ialah penggunaan yang lebih biasa

Variasi sintaks asas: masukkan berbilang rekod pada satu masa

insert into user(username,password,sex)
 values('黄晓明', 'abcdef', 1),
 ( 'angelababy', 'bcdeef', 0),
 ( '陈赫', '123456', 1),
 ('王宝强', '987654', 1);

Selepas memasukkan rekod, kembalikan ID rekod

Mysql提供了一个LAST_INSERT_ID()的函数。
mysql> SELECT LAST_INSERT_ID();  -> 195

Ringkasnya, fungsi ini akan Mengembalikan nilai medan yang ditambah secara automatik dalam jadual rekod yang dimasukkan Secara amnya, kami menamakan ID medan yang ditambah secara automatik. Ini akan mengembalikan nilai ID rekod yang baru dimasukkan.

Kaedah pelaksanaan MySQL untuk memasukkan rekod apabila ia tidak wujud dan kemudian mengemas kininya jika ia wujud

mysql> truncate `200702`; 
 Query OK, 0 rows affected (0.01 sec) 
 mysql> select * from `200702`; 
 Empty set (0.01 sec) 
 mysql> insert into `200702` (`domain`, `2nd_domain`, `tld`, `query_ns1`, `query_ns2`, `report_date`) values ('dnspod.com', 'dnspod', 'com', 1000, 2000, '2007-02-04') ON DUPLICATE KEY UPDATE `query_ns1` = `query_ns1` + 1000, `query_ns2` = `query_ns2` + 2000; 
 Query OK, 1 row affected (0.00 sec)

Sudah tentu, apabila mencipta jadual, jangan lupa untuk membuat unik

UNIQUE KEY `domain` (`domain`,`report_date`)

untuk domain


Meneruskan pembelajaran
||
<?php echo "Hello Mysql"; ?>
  • Cadangan kursus
  • Muat turun perisian kursus