標籤:sele dump set sql資料庫 key system localhost 命令 就是
9.9.7.8 往表中插入資料
(1)命令文法
Insert into<表名>[(<欄位名1>[…<欄位名n>])]values(值1)[,(值n)]
(2)建立一個簡單的測試表test1
Create Table: CREATE TABLE `test1` ( `id` int(4) NOT NULL AUTO_INCREMENT, `name` char(20) NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1
(3)往表中插入資料的不同的例子
a.按規矩指定所有列名,並且每列都插入值
Insert into test(id,name) values(1,’zbf’);[email protected] 12:0600-> insert into test(id,name) values(1,‘zbf‘);Query OK, 1 row affected (0.00 sec)[email protected] 12:1313->select * from test;+----+------+| id | name |+----+------+| 1 | zbf |+----+------+1 row in set (0.00 sec)
b.由於id列為自增的,所以只在name列插入值
[email protected] 12:1329-> insert into test(name) values(‘wwnwan‘);Query OK, 1 row affected (0.00 sec)[email protected] 12:1738->select * from test;+----+--------+| id | name |+----+--------+| 1 | zbf|| 2 | wwnwan |+----+--------+2 rows in set (0.00 sec)
c.如果不指定列,就要按規矩為每列都插入適當的值
[email protected] 12:1742->insert into test values(3,‘lisi‘);Query OK, 1 row affected (0.00 sec)[email protected] 12:2349->select * from test;+----+--------+| id | name |+----+--------+| 1 | zbf|| 2 | wwnwan || 3 | lisi |+----+--------+
d.批量插入資料方法提升效率。
[email protected] 12:2630->insert into test values(4,‘woshishei‘),(5,‘nimei‘);Query OK, 2 rows affected (0.00 sec)Records: 2 Duplicates: 0 Warnings: 0[email protected] 12:2708->select * from test;+----+-----------+| id | name |+----+-----------+| 1 | zbf || 2 | wwnwan|| 3 | lisi || 4 | woshishei || 5 | nimei |+----+-----------+
e.刪除資料(慎用)
[email protected] 12:2723->delete from test;Query OK, 5 rows affected (0.00 sec)[email protected] 12:4005->select * from test;Empty set (0.00 sec)
f.批量插入示範
[email protected] 12:4502->select * from test;+----+-----------+| id | name |+----+-----------+| 1 | wwnwan|| 2 | zbf || 3 | lisi || 4 | woshishei || 5 | nimei |
g.測試完畢,退出資料庫,然後備份上述資料,留著備用。備份後檢查備份的sql資料內容;過濾無用資訊。
[[email protected] ~]# mysqldump -usystem -pzbf666 -B wwn >/opt/zbf_bak.sql[[email protected] ~]# grep -E -v "#|\/|^$|--" /opt/zbf_bak.sql
h.一個錯誤的備份案列,如果不檢查備份資料可能導致資料不是想要的
[[email protected] ~]# mysqldump -usystem -pzbf666 -A -B wwn >/opt/zbf_bak1.sql[[email protected] ~]# grep -E -v "#|\/|^$|--" /opt/zbf_bak1.sql Usage: mysqldump [OPTIONS] database [tables]
提示:
- -A備份所有的庫,-B備份指定的庫
- 5.1.68版本[[email protected] ~]# mysqldump -usystem -pzbf666 –A -B --events >/opt/zbf_bak.sql
補充強調:我們平時登入網站發文章,發博文,實質上就是調用網站的程式串連mysql資料庫,通過上述insert語句把文章博文資料存入資料庫的。
Mysql DBA 進階營運學習筆記-DML語句之insert知識講解