MySQL数据的插入、查询、修改和删除(新手必看)
创建好 MySQL 数据库和数据表之后,接下来就可以往表中添加数据,以及对表中数据进行查询、修改和删除操作。
例如创建数据表 tmp1,定义数据类型为 TIMESTAMP 的字段 ts,向表中插入值'19950101010101'、'950505050505'、'1996-02-02 02:02:02'、'97@03@03 03@03@03'、121212121212、NOW(),SQL 语句如下:
这里使用数据表 person,创建语句如下:
插入演示数据,SQL 语句如下:
例如,从 person 表中获取 name 和 age 两列,SQL 语句如下:
例如在 person 表中更新 id 值为 1 的数据,将 age 字段值改为 15,将 name 字段值改为 LiMing,SQL语句如下:
DELETE 语句基本语法格式如下:
例如,在 person 表中删除 id 等于 1 的数据,SQL 语句如下:
MySQL插入数据
使用基本的 INSERT 语句插入数据时,要求指定表名称和插入到新数据中的值。基本语法格式为:INSERT INTO table_name (column_list) VALUES (value_list);
- table_name:指定要插入数据的表名;
- column_list:指定要插入数据的列;
- value_list:指定每个列对应插入的数据。
在 MySQL 中,可以一次性插入多行数据,各行数据之间用逗号隔开即可。注意,使用该语句时字段列和数据值的数量必须相同。
例如创建数据表 tmp1,定义数据类型为 TIMESTAMP 的字段 ts,向表中插入值'19950101010101'、'950505050505'、'1996-02-02 02:02:02'、'97@03@03 03@03@03'、121212121212、NOW(),SQL 语句如下:
CREATE TABLE tmp1( ts TIMESTAMP);向表中插入多条数据的 SQL 语句如下:
INSERT INTO tmp1 (ts) values ('19950101010101'), ('950505050505'), ('1996-02-02 02:02:02'), ('97@03@03 03@03@03'), (121212121212), ( NOW() );
MySQL查询数据
MySQL 从数据表中查询数据的基本语句为 SELECT 语句。SELECT 语句的基本格式是:SELECT {* | <字段列表>} [ FROM <表 1>, <表 2>... [WHERE <表达式> [GROUP BY <group by definition>] [HAVING <expression> [{<operator> <expression>} ... ]] [ORDER BY <order by definition>] [LIMIT [<offset>,] <row count>] ] ] SELECT [字段 1, 字段 2, …, 字段 n] FROM [表或视图] WHERE [查询条件];其中,各条子句的含义如下:
- {* | <字段列表>} 包含星号通配符和字段列表,表示查询的字段,其中字段列至少包含一个字段名称。如果要查询多个字段,则多个字段之间用逗号隔开,最后一个字段后不要加逗号;
- FROM <表1>,<表2>...,表 1 和表 2 表示查询数据的来源,可以是单个或者多个;
- WHERE子句是可选项,如果选择该项,将限定查询行必须满足的查询条件;
- GROUP BY <字段>,该子句告诉 MySQL 如何显示查询出来的数据,并按照指定的字段分组;
- [ORDER BY <字段>],该子句告诉 MySQL 按什么样的顺序显示查询出来的数据,可以进行的排序有:升序(ASC)、降序(DESC);
- [LIMIT [<offset>,] <row count>],该子句告诉 MySQL 每次显示查询出来的数据条数。
这里使用数据表 person,创建语句如下:
CREATE TABLE person ( id INT UNSIGNED NOT NULL AUTO_INCREMENT, name CHAR(40) NOT NULL DEFAULT '', age INT NOT NULL DEFAULT 0, info CHAR(50) NULL, PRIMARY KEY (id) );
插入演示数据,SQL 语句如下:
INSERT INTO person (id ,name, age , info) VALUES (1,'Green', 21, 'Lawyer'), (2, 'Suse', 22, 'dancer'), (3,'Mary', 24, 'Musician');
例如,从 person 表中获取 name 和 age 两列,SQL 语句如下:
SELECT name, age FROM person;
MySQL修改数据
表中有数据之后,接下来可以对数据进行更新操作,MySQL 中使用 UPDATE 语句更新表中的数据,可以更新特定的行或者同时更新所有的行。基本语法结构如下:UPDATE table_name SET column_name1 = value1,column_name2=value2,…,column_namen=valuen WHERE (condition);
- column_name1,column_name2,…,column_namen 为指定更新的字段的名称;
- value1,value2,…,valuen 为相对应的指定字段的更新值;
- condition 指定更新的数据需要满足的条件。更新多列时,每个“列-值”对之间用逗号隔开,最后一列之后不需要逗号。
例如在 person 表中更新 id 值为 1 的数据,将 age 字段值改为 15,将 name 字段值改为 LiMing,SQL语句如下:
UPDATE person SET age = 15, name='LiMing' WHERE id = 1;
MySQL删除数据
从数据表中删除数据使用 DELETE 语句,DELETE 语句允许 WHERE 子句指定删除条件。DELETE 语句基本语法格式如下:
DELETE FROM table_name [WHERE <condition>];
- table_name 指定要执行删除操作的表;
- [WHERE <condition>] 为可选参数,指定删除条件,如果没有 WHERE 子句,DELETE 语句将删除表中的所有数据。
例如,在 person 表中删除 id 等于 1 的数据,SQL 语句如下:
DELETE FROM person WHERE id = 1;