在Mysql数据库中真正被调用的是某个数据库中数据表里面的数据,因此如何更好的操作和使用这些数据才是使用Mysql数据库的根本。
需要先有创建数据库和数据表,我们使用前章节的test数据库和user表,没有新建的运行一下sql语句。
创建test数据库
CREATE DATABASE test;
创建user表
CREATE TABLE IF NOT EXISTS `user` ( `id` int(11) DEFAULT NULL, `Name` char(255) DEFAULT NULL, `password` char(255) DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
建立一个数据表后,首先想到的是向数据表添加数据。这项操作可以通过insert命令来实现。
INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);
无需指定要插入数据的列名,只需提供被插入的值即可
INSERT INTO table_name VALUES (value1,value2,value3,...);
INSERT INTO `test`.`user` (`id`, `Name`, `password`) VALUES ('1', 'zhansan', '123');
user表的数据如下所示:
+----+---------+----------+ | id | Name | password | +----+---------+----------+ | 1 | zhansan | 123 | +----+---------+----------+
在mysql中,一次可以同时插入多行记录,各行记录的值在values关键字后以逗号","分隔,标准的sql语句一次只能插入一次。
INSERT INTO `test`.`user` (`id`, `Name`, `password`) VALUES ('2', 'lisi', '345'), ('3', 'liming', '456');
user表的数据如下所示:
+----+---------+----------+ | id | Name | password | +----+---------+----------+ | 1 | zhansan | 123 | | 2 | lisi | 345 | | 3 | liming | 456 | +----+---------+----------+
SELECT语句用来从数据库表获取数据返回表形式数据的结果。这些结果表被称为结果集。
SELECT column_name,column_name..FROM table_name;
查询所有列数据:
SELECT * FROM table_name;
想要"name"和"password"的数据
select name,password from user2;
结果:
+---------+----------+ | name | password | +---------+----------+ | zhansan | 123 | | lisi | 345 | | liming | 456 | +---------+----------+
在使用数据表数据时,难免会添加错误之类的,这时候就需要对错误数据进行修改。执行修改操作命令是update命令。
UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;
UPDATE 数据表名 SET 列名1=值1,列名2=值2,... WHERE 某列=某值;
![]() | WHERE 子句规定哪条记录或者哪些记录需要更新。如果您省略了 WHERE 子句,所有的记录都将被更新! |
user表具有以下记录:
+----+---------+----------+ | id | Name | password | +----+---------+----------+ | 1 | zhansan | 123 | | 2 | lisi | 345 | | 3 | liming | 456 | +----+---------+----------+
下面是一个例子,这将用于更新Name为lisi的客户的password为111:
UPDATE user2 SET password= '111' WHERE Name = 'lisi';
结果:
+------+---------+----------+ | id | Name | password | +------+---------+----------+ | 1 | zhansan | 123 | | 2 | lisi | 111 | | 3 | liming | 456 | +------+---------+----------+
运算符 | 描述 |
---|---|
= | 等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
!> | 不大于 |
!< | 不小于 |
<>或!= | 不等于 |
删除数据也是数据库常见操作,DELETE 语句用于删除表中的行。
DELETE FROM table_name WHERE some_column=some_value;
DELETE FROM 数据表名 WHERE 某列=某值; user表具有以下记录:
user表具有以下记录:
+------+---------+----------+ | id | Name | password | +------+---------+----------+ | 1 | zhansan | 123 | | 2 | lisi | 111 | | 3 | liming | 456 | +------+---------+----------+
删除id=3的行数据
DELETE FROM user WHERE id='3';
结果:
+------+---------+----------+ | id | Name | password | +------+---------+----------+ | 1 | zhansan | 123 | | 2 | lisi | 111 | +------+---------+----------+
如果不要where指定条件,则是删除表的所有数据。
DELETE FROM user