mysql入门知识整合

   学习数据库之前,我一直有以下几个疑问。

   为什么写程序要用到数据库?数据库的定义是什么?关系型数据库和非关系型数据库有什么区别?

  抱着这样的疑问,我开始了学习数据库入门之旅

  查阅了一下资料,总结了一下这些疑问点。1,数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。

  2,J.Martin给数据库下了一个比较完整的定义:数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个"数据库集合。

 3,关系型数据库通过外键管理来建立表与表之间的关系,非关系型数据库通常指数据以对象的形式存储在数据中,也就是键值方式存储,而对象之间的关系通过每个对象的自身属性来决定。非关系型数据库中,我们查询一条数据,结果出来一个数组,关系型数据库中,查询一条数据结果是一个对象。关系型数据库SQLite、Oracle、mysql。非关系数据库MongoDb、redis、HBase
  因为现在我目前只使用的是关系型数据库mysql,这里就总结一下mysql的基本知识,用的是navicat数据库连接工具

先从基础的建开始:

 

DDL 数据库定义语言  

查询 show databases; 查询所有数据库

删除数据库:drop database 数据库名称

创建数据库 create  database  数据库名称

修改数据库:alter database 数据库名称 + 修改内容 set  修改后内容

 

DML 数据库操作语言

Insert into

增加内容: insert into 表名(字段名) values (值)(表名后跟了字段名时,值要与表名后字段名的数据类型对应,不跟字段名时,要添加每一个的值)

Delete

删除整个表内容:delete from 表名(只删除数据,不能删除约束)

Update

修改字段某个的值:update 表名 set 字段名 = 新值 where 字段名 = 旧值

 

DQL 数据库查询语言

条件查询 where   select * from  表名  where 条件

分页查询 limit     select * from  表名 limit a,b

模糊查询 like      select * from  表名 where  字段 like 条件

排序查询 order by  select * from  表名 order by  字段  desc   (默认 降序) 字段  Asc  升序

分组查询 group by    select * from  表名  group by 字段

范围查询:select * from 表名 where 字段 between 1 and 2

聚合查询  sum(求和)   avg 平均   count 统计个数

子查询: 一条数据查询的结果用来做另一个数据查询的条件

其实数据库的基础知识,需要多加练习才可以

另外补充一些主键和外键的作用:主键 指定某个字段的值不能重复  ,外键 保证数据的完整性和一致性

还有一些数据库的高级应用,等以后学完在总结

 

 

 

 

posted @ 2019-02-24 22:31  长路漫漫需努力  阅读(117)  评论(0编辑  收藏  举报