mysql简单介绍
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
————————————————————————————————————————————————————————
1.进入展示数据库以及数据表的方法
1.进入数据库mysql -uproot -p
2.展示当前用户所能访问的数据库show databases;
3.进入使用某个数据库use [database_name]
4.展示当前数据库包含的表show tables;
5.展示表的columns的属性desc [table_name]
6.展示表的columns的内容select [column_name] from [table_name]
————————————————————————————————————————————————————————
2.创建用户
1.创建一个用户create user [username]@[localhost] identified by '12345'
2.赋予用户对某个数据库的权利grant all on test.* to [username]@[host];
这里把all是代表用户具有操作数据库的所有权利,mysql的权利一共有27种,感兴趣的可以自己搜索
3.删除用户drop user [user_name@host] 或者delete from user where user=[user_name] and host=[host]
4.创建完用户之后可以使用此用户进入mysqlmysql -u [user_name] -p
——————————————————————————————————————————————————————————
3.创建数据库
1.创建数据库create database [database_name] charset utf8;
(charset utf8 不可以少,否则数据库无法保存中文)
2.删除数据库drop database [database_name];
————————————————————————————————————————————————————————————
4.数据表的创建以及增删改查
这里我们将以学生信息管理的案例进行说明:
1.数据表的创建
column的格式一般是 column_name +类型 +属性
(数据类型种类见博文《mysql的数据类型》)
create table student(
id int auto_increment,
name char(32) not null,
age int not null,
NCEE_grade int not null,
register_data data not null,
primary key(id)
);
2.增 插入数据
格式是insert into [table_name] ([column],..) values("name",...);
insert into student(name,age,NCEE_grade,register_date) values("刘备",20,400,"2018-9-1");
insert into student(name,age,NCEE_grade,register_date) values("关羽",19,380,"2018-8-31");
insert into student(name,age,NCEE_grade,register_date) values("张飞",18,360,"2018-8-30");
3.删 删除行数据
格式 :delete from [table_name] where [column_name] = " "
例子:
1.删除叫刘备的小朋友 delete from student where name = "刘备";
2.删除age大于等于19的小朋友 delete from student where age>=19;
3.删除登记日期在9月之后的 delete from student where date like "2018-09%";
关于like的相关用法 读者可行阅读推荐博客:https://blog.csdn.net/e421083458/article/details/7922892
4.改 更改数据值
格式:update [table_name] set [columns] = " ",[columns] = " " where //改值
例子:将刘备小朋友的高考成绩改成390 update student set NCEE_grade = 390 where name = "刘备";
5.查 按照统计要求查询数据
- 按照NCEE_grade升序展示
select * from student order by NCEE_grade desc;
- 分组统计每一个column出现的次数
格式:select [column],count(*) (as [name])from student group by [column];
select register_date,count(*) as date_num from student group by register_date;
- 根据column1的分组 分别计算每一组的column2的总值
格式:select [column1],sum(column2) from student group by [column1] ;
select name,sum(NCEE_grade) from student group by name ;
- 根据column1的分组 分别计算每一组的column2的总值 并且 统计总人数
格式:select coalesce(column1,"total_num"),sum(column2) as [name] from student group by [column1] with rollup
select coalesce(name,"total_grade"),sum(NCEE_grade) as total from student group by name with rollup
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
5.alter相关使用
- 插入一个字段column
格式:alter table student add [column_name] 类型 属性
alter table student add gender char();
- 删除column
格式:alter table [table_name] drop [column_name];
alter table student drop gender:
- 修改类型
格式:alter table [table_name] modify [column_name] char();
alter table student modify age int(36);
- 改变column
格式:alter table [table_name] change [pre_column_name] [now_column_name] 类型 default "X";
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––