新增数据

MySQL使用insert into语句来插入数据

insert into table_name (fiel1, field2,.....fieldN) values(value1, value2, value3,...valueN);

如果数据是字符型,就必须使用单引号或者双引号,如’value’

下面举个例子吧

先创建一个user表

create table user(id int primary key auto_increment, name varchar(100), age int, phone_number varchar(20));

然后插入数据

insert into user (name, age, phone_number) values ('xiaoli',21,15236547896), ('qiansan',18,15212345678), ('zhangsan',30,18210721111);

查询数据

在MySQL数据库中使用select语句来查询数据

在数据库中通用的select语句语法如下:

SELECT column_name, column_name
FROM table_name
[WHERE Clause]
[LIMIT N] [ OFFSET M]

查看user表的数据

select * from user;

查询年龄大于20的用户:

select name, age from user where age>20

修改数据

我们使用update来更新数据表中的数据。

语法如下:

update table_name set field1=new-value1, field2=new-value2;

比如将用户id为1的年龄更新为22:

update user set age=22 where id=1;

删除数据

可以使用sql的delete from命令来删除mysql数据表中的记录

语法如下

delete from table_name [where clause]

删除年龄在25岁以上的用户

delete from user where age >25;

replace操作

如果数据库中存在相同主键的数据,replace的作用相当于修改操作;如果数据库中不存在相同主键的数据,replace相当于插入操作。

replace的语法如下

replace [info] table_name [column_name,...] {values|value} ({expr|default}, ...), (...),...

举个实际的例子,在这个例子中,id是数据表的主键

mysql> select * from user
    -> ;
+----+---------+------+--------------+
| id | name    | age  | phone_number |
+----+---------+------+--------------+
|  1 | xiaoli  |   22 | 15236547896  |
|  2 | xiaoli  |   21 | 15236547896  |
|  3 | qiansan |   18 | 15212345678  |
|  4 | xiaoli  |   21 | 15236547896  |
|  5 | qiansan |   18 | 15212345678  |
+----+---------+------+--------------+
5 rows in set (0.00 sec)

mysql> replace into user (id, name, age, phone_number) values(1, 'xiaoli', 21, 15236547896), (3, 'qiansan', 18, 15212345678), (6, 'zhangsan', 30, 18210721111);
Query OK, 4 rows affected (0.01 sec)
Records: 3  Duplicates: 1  Warnings: 0

mysql> selece * from user;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'selece * from user' at line 1
mysql> select * from user;
+----+----------+------+--------------+
| id | name     | age  | phone_number |
+----+----------+------+--------------+
|  1 | xiaoli   |   21 | 15236547896  |
|  2 | xiaoli   |   21 | 15236547896  |
|  3 | qiansan  |   18 | 15212345678  |
|  4 | xiaoli   |   21 | 15236547896  |
|  5 | qiansan  |   18 | 15212345678  |
|  6 | zhangsan |   30 | 18210721111  |
+----+----------+------+--------------+
6 rows in set (0.00 sec)

在例子里面,执行replace语句,然后再次执行数据查询语句,可以看到id为1的用户存在,所以replace语句变为修改操作,将用户1的年龄修改为21。用户3的信息与replace语句的内容一样,不修改。用户6不存在,replace语句相当于插入操作。

你也可能喜欢

发表评论