什么是数据库:是一个可以长期存储在计算机内的、有组织的、有共享的、可以统一管理的数据集合
主要特点:
1.实现数据共享
2.减少数据的冗余度
3.数据的独立性
4.数据实现集中控制
5.数据的一致性和可维护性
1.物理数据层:数据库的最内层
2.概念数据层:中间一层
3.逻辑数据层:他是用户看到和使用的数据库
1.层次型数据库
2.网状型数据库
3.面向对象型数据库:建立在面向对象模型的基础上
4.关系型数据库:后面会用到慢慢写
数据库服务器----多个数据库----多个数据表–字段,数据行(理解建议写一个表格,表头比如id就是字段,下面的名字就是数据行)~
1.DDL:数据定义语言,下面将会详细讲解
2.DML:数据操纵语言,增,删,改
3.DCL:数据控制语言,权限控制,分配需要的权限,比如你给其他人增加的权限,其他权限用不了,后面的文章会更新,
4.TCL:事务控制语言,最重要回滚:简单介绍一下,打游戏大比较难的boss,有个存档,不过以后你怎么搞,只要点击你的存档,就能回到那个时间点。后面也会讲解。
首先学习DDL语言,说白了就是定义,笔者下载的是mysql,不要问为什么是这个,因为穷。操作步骤1.打开你下载的mysql文件bin目录
打开文件,找到bin目录打开:
打开界面可能不同,只是方便进入命令行
直接在上面的文件目录cmd!!! 并回车,出现下面的命令行:
就是我们在mysql\bin目录下进行操作,首先是连接数据库:
1.mysql -hlocalhost -uroot -p+你自己的数据库密码
2.mysql -h -uroot -p点击回车,在下面的p输入密码
3.musql -uroot -p 点击回车,在下面的p输入密码
以上三个进入方式都可以,自己喜欢那个玩那个,我随意用一个下面是展示效果:
输入完密码点击回车~出现一下情况,是连接成功,其他报错的,找时间会写一篇专讲,看不懂的下面的英文自己有道一波.
ok既然我们连接上了数据库,我们首先要看下里面到底有啥东西:
mysql> show databases;//展示所有数据库
注意这里面很重要,首先是databases是复数形式,因为是展示不确定是不是一个,一定要加s,接下来就是经常犯的错误,自己看好是英文;,这个分号不写,不对!汉语分号,不对!!!!!!!!!!!!!!
上面图中那个除了java2000,剩下四个是安装数据库自带的,不能删!!!别给自己找事做~,我们看到这是我们自己数据库的全部内容,逃不过增,删,改,查,这里只需要了解增,删就完事了,改,查没必要原因自己思考下,嘿嘿。
增:
mysql> create database +数据库名字 ;
mysql> drop database +数据库名字 ;
ok,数据库夜建好了,用就完事了,我在这还是把那个javaloveme创建下来,步骤省略,这时我们就要用了
use javaloveme;
下一步就是数据表,逃不过的命运增,删,改,查~不慌一个一个来,先建立一个类比建立数据库
还是先展示
show tables;
mysql> create table + 表名字(里面放字段,相对应的数据类型);
我就建立一个basket好了,里面有id,姓名,位子。。上面看不懂没关系,看我演示这段看就完事了,奥里给
好了,看到这,你说这是啥玩意,不慌,我一一解释,首先
create table basket //创建一个数据表叫basket
id int //id 前面说了字段 int 就是id的数据类型下面都是这样,字段 字段对应的数据类型
name varchar(30)//姓名不多说了,varchar(30),这是什么呢,var是variable的缩写,可变的,char数据库里面的字符串,合起来就是可变长字符串,30限定长度,节约内存!,所以这句话varchar(30)翻译就是在30以内的字符串类比char的话是什么?
adress varchar(30)//同上不多比比
info text//text就是文本,想写多少写多少~
到这里表头就创建好了,接下来就是改,改之前补充一个命令:
desc + 表名//查看数据表的结构
1.先删除表中的字段
alter table +表名 drop +删除项
2.小知识点,命令没打分号,系统会提醒你继续输入,加上敲回车就行了~,添加类似只是要加上添加信息的数据类型
alter table +表名 add 名字 名字对应的数据类型;
alter table +表名 add 名字 名字对应的数据类型 after +表名;
看到这,告辞
4.修改指定字段的数据类型
alter table +表名 modify 字段 改变的数据类型
alter table +表名 change 修改字段 新字段 新字段对应的数据类型
哈哈,这个上面这个又是知识点,不慌,来分析8表示数据最大长度就是00000000,2因为是float,不难想到,2表示小数是两位
1.以上我们基本的表已经建立完毕,接下来需要向表中插入元素
insert into +表名 (字段的名字...) values (对应字段数据);
中间是多个,逗号(英文的),隔开
这里我们高科技是该拿出来了,妈个鸡,写的累死了,
网上下载,数据库可视化界面,下载,双击图标,打开
点击
点击新连接
密码就是数据库密码,数据库名字就是我们自己写的,完成点击连接就行了
左边就是我们建立的数据库,多次往下点击,我们能看到我们建立成功了,信息无误,后面数据库信息的变更不在命令行一行一行敲了~
真香~,不过原理还是要了解
2.修改表的数据
用软件直接添加~命令行夜可以
update +表名 set +修改条件 where +判断条件
delete from +表名 where +判断条件;
其实我们数据库的作用是干什么就是查询,我在前面也提到了查询时select
select * from +表名 //*代表通配符,全部显示
select +查找修改条件,修改条件 from +表名
select +表头 as 改的新名字 from 数据表
我想让我查出来的这代码升序(asc)或降序(desc)形式show出来
order by
升序自己试下~
这时还有个问题,要是工资一样我们可以添加另外一条的判断语句进行排序~
–limit 分页 限制
–如果limit后面跟的是一个数字 就是显示多少条的数据
-一般是limit后面跟两个数字 limit 0,5 就是分页的情况
–limit的第一个数字是下标, 第二个数字是显示多少数据
–找规律
–length 显示多少条的数据
–pageCount 是页数
–limit (pageCount-1)*length , length;
mysql> select * from basket limit 0,3;–第一页的数据limit 0, 3;
mysql> select * from basket limit 3,3;–第二页的数据limit 3, 3;
mysql> select * from basket limit 6,3;–第三页的数据limit 6, 3;
mysql> select * from basket limit 9,3;–第四页的数据limit 9,3;
–内置函数,sql语句的自带的函数
–以后如果没有特别的需求,尽量少使用,会拖慢数据库执行效率
mysql> select max(age) from basket ;–找出数据中工资最大的是多少
mysql> select min(age) from basket ;–找出数据中工资最小的是多少
mysql> select avg(age) from basket ;–找出数据中工资平均值是多少
mysql> select sum(age) from basket;–找出数据中工资的和是多少
统计函数
mysql> select count(*) from basket;
mysql> select count(1) from basket ;–据说效率会比上面的高一点
模糊查询, 大量搜索的时候才用网站中的搜索框
–like
– _必须匹配一个
– %不限制匹配的字符个数 开发中最常用
mysql> select * from basket where name like “%爷%”;
还有很多组合命令,有时间我会写的详细,不知道有没有人会看到,敲一边,万水千山总是情,点个关注行不行~