MySQL 04 基本操作&增删改查

1 基本操作

1.1 登陆与退出
// 登录
mysql -u root -p
// 退出
exit
1.2 创建数据库
// 登陆MySQL中操作
create database 数据库名;
// 不需登录操作
mysqladmin -u root -p crate 数据库名
1.3 删除数据库
drop database 数据库名;
// 不登陆MySQL操作
mysqladmin -u root -p drop 数据库名
1.4 选择数据库
use 数据库名;
1.5 查看数据库与数据表
// 列出所有数据库
show databases;
// 列出数据库中的所有数据表
show tables;
// 显示数据表的属性
show columns from 数据表名;
// 显示数据表的详细索引信息
show index from 数据表名;
// 显示数据库中所有表的信息
show table status from 数据库名;
1.6 创建数据表
create table 数据表名 (列名 列的数据类型);

示例:

create table if not exists 'my_tb1'(
    id int  unsigned auto_increment,
    title varchar(100) not null,
    author varchar(40) not null,
    date DATE,
    primary key (id)
)engine=InnoDB default charset=utf8;

解析:

  • not null 设置字段不为空
  • auto_increment 表示列为自增,一般用于主键,数值自动加1
  • primary key 用于定义列为主键
  • engine 设置存储引擎,charset 设置编码
1.7 删除数据表
drop table 表名;

2 增删改查

2.1 插入数据
insert into 表名 (列1,列2,列3....列n)values (值1,值2....值n);

示例:

mysql> insert into tb1
    -> (title,author,date)
    -> values('学习mysql','lihaogn',NOW());
Query OK, 1 row affected, 1 warning (0.03 sec)
2.2 查询数据
select 列名 from 表名 [where ...][limit n][offset n];

解析:

  • 可以查询多个表,表名之间用逗号分隔
  • select可以读取一条或多条数据
  • where来指定条件
  • limit来设定返回的记录数
  • offset指定开始查询的数据偏移量,默认为0

1)条件查询

SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....

示例:

mysql> select * from tb1;
+----+-------------+----------+------------+
| id | title       | author   | date       |
+----+-------------+----------+------------+
|  1 | 学习mysql   | lihaogn  | 2018-07-13 |
|  2 | 学习java    | zhangsan | 2018-06-30 |
+----+-------------+----------+------------+
2 rows in set (0.00 sec)

mysql> select title,author from tb1 where date=
    -> '2018-7-13';
+-------------+---------+
| title       | author  |
+-------------+---------+
| 学习mysql   | lihaogn |
+-------------+---------+
1 row in set (0.00 sec)
2.3 更改数据
update 表名 set 列1=新值,列2=新值...,列n=新值 [where ...];

示例:


mysql> select * from tb1;
+----+-------------+----------+------------+
| id | title       | author   | date       |
+----+-------------+----------+------------+
|  1 | 学习mysql   | lihaogn  | 2018-07-13 |
|  2 | 学习java    | zhangsan | 2018-06-30 |
|  3 | 学习linux   | wangwu   | 2018-05-06 |
+----+-------------+----------+------------+
3 rows in set (0.00 sec)

mysql> update tb1 set title='学习python' where id=3;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from tb1;
+----+--------------+----------+------------+
| id | title        | author   | date       |
+----+--------------+----------+------------+
|  1 | 学习mysql    | lihaogn  | 2018-07-13 |
|  2 | 学习java     | zhangsan | 2018-06-30 |
|  3 | 学习python   | wangwu   | 2018-05-06 |
+----+--------------+----------+------------+
3 rows in set (0.00 sec)
2.4 删除数据
delete from 表名 [where ...];

示例:

mysql> delete from tb1 where title='学习python';
Query OK, 1 row affected (0.00 sec)

mysql> select * from tb1;
+----+-------------+----------+------------+
| id | title       | author   | date       |
+----+-------------+----------+------------+
|  1 | 学习mysql   | lihaogn  | 2018-07-13 |
|  2 | 学习java    | zhangsan | 2018-06-30 |
+----+-------------+----------+------------+
2 rows in set (0.00 sec)

猜你喜欢

转载自blog.csdn.net/lihaogn/article/details/81023217