Mysql中的删除操作
0.准备
创建一张表persons,然后往这张表中导入一些数据:
create table persons(
id int(5) primary key not null,
LastName varchar(20),
FirstName varchar(20),
Address varchar(20),
City varchar(20));
insert into persons values
(1,'Adams','John','Oxford Street','London'),
(2,'Bush','George','Fifth Avenue','New York'),
(3,'Carter','Thomas','Changan Street','Beijing');
1.delete
- 01.结合where子句可以删除表中某一行
- 02.可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:
mysql> select * from persons;
+----+----------+-----------+----------------+----------+
| id | LastName | FirstName | Address | City |
+----+----------+-----------+----------------+----------+
| 1 | Adams | John | Oxford Street | London |
| 2 | Bush | George | Fifth Avenue | New York |
| 3 | Carter | Thomas | Changan Street | Beijing |
+----+----------+-----------+----------------+----------+
3 rows in set (0.02 sec)
mysql> delete from persons;
Query OK, 3 rows affected (0.05 sec)
mysql> select * from persons;
Empty set (0.00 sec)
mysql> desc persons;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| id | int(5) | NO | PRI | NULL | |
| LastName | varchar(20) | YES | | NULL | |
| FirstName | varchar(20) | YES | | NULL | |
| Address | varchar(20) | YES | | NULL | |
| City | varchar(20) | YES | | NULL | |
+-----------+-------------+------+-----+---------+-------+
5 rows in set (0.01 sec)
2.drop
- 01.可以轻松删除索引,表和数据库。
- 001.删除索引
alter table tableName drop index index_name
- 002.删除表【表数据和表结构都被删除】
mysql> drop tables persons;
Query OK, 0 rows affected (0.08 sec)
mysql> select * from persons;
ERROR 1146 (42S02): Table 'mydatabase.persons' doesn't exist
mysql> desc persons;
ERROR 1146 (42S02): Table 'mydatabase.persons' doesn't exist
3.truncate[与delete相同]
- 1.仅删除表内的数据,但并不删除表结构
mysql> truncate table persons;
Query OK, 0 rows affected (0.25 sec)
mysql> select * from persons;
Empty set (0.00 sec)
mysql> desc persons;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| id | int(5) | NO | PRI | NULL | |
| LastName | varchar(20) | YES | | NULL | |
| FirstName | varchar(20) | YES | | NULL | |
| Address | varchar(20) | YES | | NULL | |
| City | varchar(20) | YES | | NULL | |
+-----------+-------------+------+-----+---------+-------+
5 rows in set (0.01 sec)