首先建立以下表格式:
create table class(
id int primary key auto_increment, ——列名1:id
sname varchar(10) not null default ”, ——列名2:sname
gender char(1) not null default ”, ——列名3:gender
company varchar(20) not null default ”, ——列名4:company
salary decimal(6,2) not null default 0.00 ——列名5:salary
)engine myisam charset utf8;
一、insert增:
语法-insert into 表名
(列名1,列名2,列名1……)
values
(对应列名1的值,对应列名1的值,对应列名1的值……);
例:
①插入1条完整数据:
mysql> insert into class
-> (id,sname,gender,company,salary)
-> values
-> (1,’张三’,’男’,’百度’,8888.67);
Query OK, 1 row affected (0.00 sec)
查看结果:
mysql> select * from class;
+—-+——-+——–+———+———+
| id | sname | gender | company | salary |
+—-+——-+——–+———+———+
| 1 | 张三 | 男 | 百度 | 8888.67 |
+—-+——-+——–+———+———+
1 row in set (0.00 sec)
②插入部分列:
mysql> insert into class
-> (sname,gender,salary)
-> values
-> (‘李四’,’男’,8888.67);
Query OK, 1 row affected (0.00 sec)
查看结果:
mysql> select * from class;
+—-+——-+——–+———+———+
| id | sname | gender | company | salary |
+—-+——-+——–+———+———+
| 1 | 张三 | 男 | 百度 | 8888.67 |
| 2 | 李四 | 男 | | 8888.67 |
+—-+——-+——–+———+———+
2 rows in set (0.00 sec)
③不申明列名插入一条完整数据:
mysql> insert into class
-> values
-> (3,’王老五’,’女’,’腾讯’,5678.9);
Query OK, 1 row affected (0.00 sec)
查看结果:
mysql> select * from class;
+—-+——–+——–+———+———+
| id | sname | gender | company | salary |
+—-+——–+——–+———+———+
| 1 | 张三 | 男 | 百度 | 8888.67 |
| 2 | 李四 | 男 | | 8888.67 |
| 3 | 王老五 | 女 | 腾讯 | 5678.90 |
+—-+——–+——–+———+———+
3 rows in set (0.00 sec)
④自增型列(id类型为自增型)可以用null占位:
mysql> insert into class
-> values
-> (null,’周老六’,’女’,’阿里’,6000);
Query OK, 1 row affected (0.00 sec)
查看结果:
mysql> select * from class;
+—-+——–+——–+———+———+
| id | sname | gender | company | salary |
+—-+——–+——–+———+———+
| 1 | 张三 | 男 | 百度 | 8888.67 |
| 2 | 李四 | 男 | | 8888.67 |
| 3 | 王老五 | 女 | 腾讯 | 5678.90 |
| 4 | 周老六 | 女 | 阿里 | 6000.00 |
+—-+——–+——–+———+———+
4 rows in set (0.00 sec)
⑤插入多条数据:
mysql> insert into class
-> (sname,gender,company,salary)
-> values
-> (‘陈七’,’女’,’360′,3456.78),
-> (‘周八’,’男’,’小米’,5456.78),
-> (‘刘九’,’男’,’百度’,7777.88);
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
查看结果:
mysql> select * from class;
+—-+——–+——–+———+———+——-+
| id | sname | gender | company | salary | fanbu |
+—-+——–+——–+———+———+——-+
| 1 | 张三 | 男 | 百度 | 8888.67 | 255 |
| 2 | 李四 | 男 | | 8888.67 | 0 |
| 3 | 王老五 | 女 | 腾讯 | 5678.90 | 188 |
| 4 | 周老六 | 女 | 阿里 | 6000.00 | 200 |
| 5 | 陈七 | 女 | 360 | 3456.78 | 120 |
| 6 | 周八 | 男 | 小米 | 5456.78 | 234 |
| 7 | 刘九 | 男 | 百度 | 7777.88 | 333 |
+—-+——–+——–+———+———+——-+
7 rows in set (0.00 sec)
二、update改:
语法-update 表名
set 列名1=对应值,
列名2=对应值,
……
where 对应行的值(判断表达式,布尔类型,结果为真则选取);
例:
①选择id为6的行,将公司改为华为,工资改为6000:
mysql> update class
-> set company=’华为’,
-> salary=6000
-> where id=6;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
查看结果:
mysql> select * from class;
+—-+——–+——–+———+———+
| id | sname | gender | company | salary |
+—-+——–+——–+———+———+
| 1 | 张三 | 男 | 百度 | 8888.67 |
| 2 | 李四 | 男 | | 8888.67 |
| 3 | 王老五 | 女 | 腾讯 | 5678.90 |
| 4 | 周老六 | 女 | 阿里 | 6000.00 |
| 5 | 陈七 | 女 | 360 | 3456.78 |
| 6 | 周八 | 男 | 华为 | 6000.00 |
| 7 | 刘九 | 男 | 百度 | 7777.88 |
+—-+——–+——–+———+———+
7 rows in set (0.00 sec)
②将性别为男,工资大于8000的公司改为谷歌:
mysql> update class
-> set company=’谷歌’
-> where gender=’男’ and salary>8000;
Query OK, 2 rows affected (0.00 sec)
Rows matched: 2 Changed: 2 Warnings: 0
查看结果:
mysql> select * from class;
+—-+——–+——–+———+———+——-+
| id | sname | gender | company | salary | fanbu |
+—-+——–+——–+———+———+——-+
| 1 | 张三 | 男 | 谷歌 | 8888.67 | 255 |
| 2 | 李四 | 男 | 谷歌 | 8888.67 | 0 |
| 3 | 王老五 | 女 | 腾讯 | 5678.90 | 188 |
| 4 | 周老六 | 女 | 阿里 | 6000.00 | 200 |
| 5 | 陈七 | 女 | 360 | 3456.78 | 120 |
| 6 | 周八 | 男 | 华为 | 6000.00 | 234 |
| 7 | 刘九 | 男 | 百度 | 7777.88 | 333 |
+—-+——–+——–+———+———+——-+
7 rows in set (0.00 sec)
三、delete删(整行删除):
语法-delete from 表名
where 对应行的值(判断表达式,布尔类型,结果为真则选取);
例:
①删除工资小于7000且性别为男的行:
mysql> delete from class
-> where salary<7000 and gender=’男’;
Query OK, 1 row affected (0.00 sec)
查看结果:
mysql> select * from class;
+—-+——–+——–+———+———+——-+
| id | sname | gender | company | salary | fanbu |
+—-+——–+——–+———+———+——-+
| 1 | 张三 | 男 | 谷歌 | 8888.67 | 255 |
| 2 | 李四 | 男 | 谷歌 | 8888.67 | 0 |
| 3 | 王老五 | 女 | 腾讯 | 5678.90 | 188 |
| 4 | 周老六 | 女 | 阿里 | 6000.00 | 200 |
| 5 | 陈七 | 女 | 360 | 3456.78 | 120 |
| 7 | 刘九 | 男 | 百度 | 7777.88 | 333 |
+—-+——–+——–+———+———+——-+
6 rows in set (0.00 sec)
四、select查:
语法-select 列名,列名……from 表名
where 对应行的值(判断表达式,布尔类型,结果为真则选取);
例:
①查性别为女且工资小于6000的名字及公司:
mysql> select sname,company from class
-> where gender=’女’ and salary<6000;
+——–+———+
| sname | company |
+——–+———+
| 王老五 | 腾讯 |
| 陈七 | 360 |
+——–+———+
2 rows in set (0.00 sec)