关于MySQL的基础知识详解

来源:07素材网 03月17日 21:26
本篇文章主要介绍MySQL的基本知识,感兴趣的朋友参考下,希望对大家有所帮助。

一.启动MySql方式

1.在”计算机管理中”选择“服务“,选择开启mysql
2.使用命令行#net start mysql

二.关闭MySql方式

1.在”计算机管理中”选择“服务“,选择关闭mysql
2.使用命令行#net stop mysql

三.登录mysql服务器

1.登录MySql,使用命令行#mysql -uroot -p123
2.退出登录使用命令行#exit|quit

四.DDL语句(data definition language)

数据定义语言:常用来定义数据库对象:库,表,字段。创建,修改,删除库,表结构
1.查询数据库
#show databases;
2.切换数据库
#use 数据库名称;
#use test;
3.创建新的数据库
#create database if not exits 数据库名称;
#create database if not exits mydb4;
4.删除数据库
#drop database if exits 数据库名称;
#drop database if exits mydb4;
5,修改数据库编码格式
#alter database 数据库名称 character set 编码格式;
#alter database mydb3 character set utf8;
=======================================
1.创建表
#create table 表名称(列名 列类型,列名 列类型,列名 列类型,列名 列类型);
#create table tb_stu(pid char(20),name varchar(50),age int,gender varchar(1));
2.查看表
#show tables;
3.删除表
#drop table 删除表名称;
#drop table tb_stu1;
4.查看表结构
#desc tb_stu;
=======================================
1.修改之添加列
#alter table 表名称 add(列名称 列类型,列名称 列类型);
#alter table tb_stu add(phone varchar(13),class varchar(5));
2.修改之修改列类型
#alter table 表名称 modify 列名称 新列类型;
#alter table tb_stu modify phone varchar(11)
3.修改之修改列名称
#alter table 表名称 change phone 新列名称 新列类型;
#alter table tb_stu change phone phoneNum varchar(11);
4.修改之删除列
#alter table 表名称 drop 列名称;
#alter table tb_stu drop class;
5.修改之修改表名称
#alter table 表名称 rename to 新表名称;
#alter table tb_stu rename to tb_student;

五.DML语句(data manipulation language)

数据操作语言:定义数据库记录。增,删,改表记录
1.插入数据
#INSERT INTO tb_student(number,NAME,age,gender,phonenum)VALUES('0001','zhangsan',20,'man','123456789');
2.修改数据
where运算符 = ,!=,>=,<=,BETWEEN...AND,IN(...) OR,AND,IS NULL,NOT#UPDATE tb_student SET number='0002',NAME='lisi' , age=age+1 WHERE NAME='lisi';#UPDATE tb_student SET age=age+1 WHERE number='0003' 'name'='wangwu' AND gender is null; 3.删除数据 #DELETE FROM tb_student WHERE number='0002';

六.DCL(data controller language)

1.创建新用户
用户只能在指定的IP上登录
#create user 名称@IP identified by '密码';
用户可以在所有的IP上登录
#create user 用户名@'%' identified by'密码';
2.给用户授权
#grant all on 数据库名.* to 用户名@IP地址;
3.撤销权限
#revoke delete on 数据库名.* from 用户名@IP地址;
4.查看权限
#show grants for 用户名@IP;
5.删除授权用户
#drop user 用户名@IP;

七.DQL语句(data query language)

数据查询语言:用来查询表记录
1.指定列查询
#select number,name from stu;
2.去重查询(重复的只记录一次)
#select distinct age from stu;(年龄相同的只记录一次)
3.列运算
(1)数量类型的列可以做加减乘除运算  
#select *,salary*1.5 from stu;
#select name,salary+comm from stu;
(2)转换null的值(如果comm为空,按0计算)  
#select salary+ifnull(comm,0) from stu;
(3)字符串连接  
#select number,concat(job,'haha') from stu;
(4)给列起别名  
#select number 别名,job 别名 from stu;
4.模糊查询
查询名字为三个字并且是以‘明’结尾#select *from stu where name like '__明';查询名字中带‘明’的数据
#select *from stu where name like '%明%';
5.排序
(1).升序(年龄升序)
#select *from stu order by age asc;
(2).降序 (年龄降序)
#select * from stu order by age desc;
(3).多列排序(年龄升序,分数降序)
#select * from stu order by age asc,score desc;
6.聚合函数
(1).查询所有列不全为空的个数
#select count(*) from stu;
(2).查询得分总数
#select sum(score) from stu;
(3).查询平均分数
#select avg(score) from stu;
(4).查询最高分数
#select max(score) from stu;
(5).查询最低分数
#select min(score) from stu;
7.分组查询
按性别分组,查询不同性别的人数
#select gender,count(*) from stu group by gender;
查看不同性别的得分大于60分的人数
#select gender,count(*) from stu where score>60 group by gender;
查看不同性别的得分大于60分并且人数大于30人的分组
#select gender,count(*) from stu where score>60 group by gender having count(*)>30;
8.limit(方言)
#select *from stu limit 4,10;

相关推荐:

PHP+MySQL处理高并发加锁事务步骤详解

PHP+MySQL实现消息队列步骤详解

如何查看MySQL的版本?

以上就是关于MySQL的基础知识详解的详细内容,更多请关注php中文网其它相关文章!
原文出处:http://www.php.cn/mysql-tutorials-396415.html
版权声明:本文来源地址若非本站均为转载,若侵害到您的权利,请及时联系我们,我们会在第一时间进行处理。

头条

在使用SQLite3时遇到的几个坑

在使用SQLite3时遇到的几个坑

《本打算在SQLite3数据库里执行一个查询语句,使用的是php语言,起初遇到的是权限问题: permission denied,因为SQLite3数据库文件和PHP执行者属于两个不同的用户,首先需要对这个文件执行mode 777的权限开放,然后,又遇到了下面这样的PHP错误