mysql入门笔记

给伙计萌讲了一次数据库,返回来看,认识到不少东西。

数据库

什么是数据库?

数据库是存放数据的仓库。数据库是一个按数据结构来存储和管理数据的计算机软件系统。

它的存储空间很大,可以存放百万条、千万条、上亿条数据。

数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。

但是

但是其实文件就可以存啊,直接用word、txt……等等存不好吗。

解答

  1. 数据库并不是随意地将数据进行存放,是有一定的规则的,更合适的组织数据、更方便的维护数据、更严密的控制数据和更有效的利用数据。

  2. 咱萌自己平常存的文件数据量太小了,所以感触很小,杂乱无章的存储查询的效率会很低。

简单总结优点

数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种 用户共享。

什么是mysql?

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的关系数据库管理系统应用软件之一。

sql?

全称 structured query language 即 结构化查询语言

my?

因为写这个版本的sql的作者是Monty(简称)

Monty 的女儿叫做 My所以这也就是MYSQL的名称来历

MariaDB和MaxDB也是一样的来历

复习简单的实操

登录mysql

登录本地,形式为
mysql -u<用户名> -p 回车然后输入密码即可
例:用户名root 密码为123
$ mysql -uroot -p
Enter password: ***

登录远程,形式为
mysql -h<ip地址> -P<端口号> -u<用户名> -p 回车然后输入密码即可
例:假设自己的云服务器ip地址为110.110.110.110 , mysql的相应端口为3306
mysql -h110.110.110.110 -P3306 -uroot -p

参数解释

​ -u表示user , -p表示password , -P表示Posrt , -h表示host

实验1

数据增删改查

建立一个demo数据表,属性列包括 id(整型),name(字符串类型)。

show global variables like "%datadir%";

#查看所有数据库
show databases;
#建立一个不存在的house数据库
create database house;
#进入house仓库
use house;
#查看当前house中存在的表
show tables;
#建立demo数据表
create table demo ( id int, name varchar(10) );
#查看表结构
desc demo;
#插入一条数据
insert into demo values( 1, "hj" ) ;
insert into demo values( 2, "zzd" ),( 3, "mml"),( 4, "hx");
insert into demo( id, name ) values( 5, "matin"),( 6, "hxj");
insert into demo(name) values("钰神");
#查询  星号(*)是选取所有列的快捷方式。 
select * from demo;
select name from demo;
#按照条件查询
select * from demo where name="zzd";
select * from demo where name="zzd" and id =2 ;
select * from demo where id > 4;
#别名
select name as "姓名" from demo;
select name "姓名" from demo;
#删除数据
delete from demo where id=3;
#改数据
update demo set name="h3zh1" where id=1;
#备份
create table backup_demo as select  *  from demo;
#删除表名
drop table backup_demo;
drop table if exists backup_demo;

实验2

创建两张表,一张是学生信息表,一张学生成绩表。

#重命名的过程
rename table demo to student;

stu_info表

#建表
create table stu_info(
    id int,
    name varchar(10),
    score int );
#插入数据
insert into stu_info value(1,"zzd",99),(2,"mml",99);
insert into stu_info(id,name,score) values(3,"hj",60),(3,"hx",92),(3,"achuan",88);
insert into stu_info(id,name,score) values(3,"yvshen",66),(3,"matin",77),(3,"achuan",88);
#排序DESC 是descend 降序意思 ,asc 是ascend 升序的意思。
select * from stu_info order by id;
select name,score from stu_info order by score desc;

#limit关键字
select * from  stu_info;
select * from demo where id > 4 limit 1,1;
#模糊查询
select * from stu_info where name not like "mm%" and not name like "zz%";
#between  not between
select * from stu_info where score between 88 and 90;
select group_concat(name) from stu_info where score not between 88 and 90;
#min max avg sum
#group_concat concat substr
#联合查询
select student.id, student.name, score from student, stu_info where student.name = stu_info.name;联合查询
#三目运算
select if(1=1, "2333", 110);
#ascii函数
select ascii('a');
#length()
select length("2333");
select substr("1234",3,2);
posted @ 2020-05-04 16:15  何止(h3zh1)  阅读(205)  评论(2编辑  收藏  举报