MySql基础教程(三):创建数据表、数据增删改查、删除数据表
1、创建数据表
创建MySQL数据表需要以下信息:
- 表名
- 表字段名
- 定义每个表字段
1.1 语法
下面是创建MySQL数据表的SQL通用语法:
CREATE TABLE table_name (column_name column_type);
以下例子在 nobug
数据库中创建数据表 nobug_user
:
CREATE TABLE IF NOT EXISTS `nobug_user`(
`user_id` INT UNSIGNED AUTO_INCREMENT,
`user_name` VARCHAR(100) NOT NULL,
`user_gender` VARCHAR(40) NOT NULL,
`user_birthday` DATE,
PRIMARY KEY ( `user_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
实例解析:
- 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
- AUTO_INCREMENT定义列为
自增的属性
,一般用于主键
,数值会自动加1。 - PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
- ENGINE 设置存储引擎,
CHARSET 设置编码
。
1.2 检查运行结果
DESC nobug_user
打印出如下结果,则创建数据表成功!!!
2、插入数据
向第一步创建的nobug_user
数据表中插入几行数据。
2.1 语法
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );
如果数据是字符型,必须使用单引号或者双引号,如:"value"。
2.2 插入示例数据
INSERT INTO nobug_user (user_name, user_gender, user_birthday)
VALUES
("不写八个", "男", "2001-03-01")
INSERT INTO nobug_user (user_name, user_gender, user_birthday)
VALUES
("日出西边", "男", "2003-03-01")
3、查询数据
我们可以通过 SELECT
语句来查询第二步插入的示例数据是否插入成功。
3.1 语法
SELECT column_name,column_name
FROM table_name
[WHERE 条件]
[LIMIT N][ OFFSET M]
- 查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
- SELECT 命令可以读取一条或者多条记录。
- 你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
- 你可以使用 WHERE 语句来包含任何条件。
- 你可以使用 LIMIT 属性来设定返回的记录数。
- 你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。
3.2 查询数据
SELECT *
FROM
nobug_user
查询结果如下,第二步数据插入成功:
4、删除数据
使用 SQL 的 DELETE FROM
命令来删除 MySQL 数据表中的记录。
4.1 语法
DELETE FROM table_name [WHERE Clause]
- 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。
- 你可以在 WHERE 子句中指定任何条件
- 您可以在单个表中一次性删除记录。
当你想删除数据表中指定的记录时 WHERE 子句是非常有用的。
4.2 删除数据
我们以第三步添加的数据为例,删除姓名为日出西边
的数据信息:
DELETE FROM nobug_user
WHERE user_name = "日出西边";
删除之后,再次查询表中的数据,检查日出西边
是否已经被删除:
5、修改数据
如果需要修改或更新 MySQL 中的数据,我们可以使用 SQL UPDATE
命令来操作。
5.1 语法
UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]
- 你可以同时更新一个或多个字段。
- 你可以在 WHERE 子句中指定任何条件。
- 你可以在一个单独表中同时更新数据。
5.2 更新数据
这里以不写八个
为例,修改其性别为女
:
UPDATE nobug_user SET user_gender = '女'
WHERE user_name = '不写八个';
修改结果:
6、删除数据表
DROP TABLE table_name ;
特别注意:
MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。