数据库概念

  数据库(Database)是按照数据结构来组织、存储和管理数据,建立在计算机存储设备上的仓库。

  简单说,数据库就是存放数据的仓库。和图书馆存放书籍、粮仓存放粮食类似。

数据库分类

  分为 关系型数据库  和 非关系型数据库

  所谓的关系型数据库:就是基于关系模型建立的数据库。

  那什么是关系模型?

  关系模型:利用关系(二维表),去描述实体信息,和实体之间的联系的一种架构。

  上面所谓的关系,其实就是二维表。  

  接下来:我们画图来理解下上面的这段话,怎么用二维表来描述实体,和实体之间的联系的 

          学生表:

姓名

年龄

身高

体重

张三

30

187

70

李四

40

165

60

          教室表:

班级名称

教室号

Php1016

102

Java1011

201

.net0918

108

Ios1021

218

  上面的学生表的每一行(我们也称为一条记录),比如张三这一行,就描述了张三这个实体,有姓名、年龄、身高、体重。教室表的每一行也描述了一个实体。

  那怎么描述他们实体之间的关系呢?比如我想知道 张三所在班级的班级号是多少?

  我们在学生表上加上一个字段,用来存放班级信息

姓名

年龄

身高

体重

班级名称

张三

30

187

70

Php1016

李四

40

165

60

Java1011

  这个时候,学生表和班级表之间就有了联系了。我们通过张三确定他的班级名称是php1016,然后通过学生表找到他的班级号是102.

常见的关系型数据库和非关系型数据库

  常见的关系型数据库:
  oracle、DB2、SQLserver、Access、mysql、sqllite

  大型数据库:oracle、DB2
  中型数据库:sqlserver、mysql
  小型数据库:access、sqllist

  mysql:之前属于sun公司,后来sun被oracle收购,如今mysql属于oracle公司。
  是开源免费的数据库软件,php开发中最常用

  非关系型库近年来发展迅猛,nosql(not only sql 不仅仅是sql)
  memcache、redis、mongoDB

  按照key-》value(键值对)方式存放数据
  "asfjaslfjaslfjaslf"=>{"name":'zhangsan',"age":18,'info':{"sex":'男'}}

SQL介绍

  结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

  SQL就是专门为关系型数据库而设计出来的。它是一种语言,能定义变量,也有程序控制语句。

  SQL分类

    1、 数据查询语言(DQL:Data Query Language):

    其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字 有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。

    专门用于查询数据:代表指令为select/show

    2、 数据操作语言(DML:Data Manipulation Language):

    其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言。

    专门用于写数据:代表指令为insert,update和delete

    3、 事务处理语言(TPL):

    它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。(不是所有的关系型数据库都提供事务安全处理)

    专门用于事务安全处理:transaction

    4、 数据控制语言(DCL):

    它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。

    专门用于权限管理:代表指令为grant和revoke

    5、 数据定义语言(DDL):

    其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。

    专门用于结构管理:代表指令create和drop(alter)

MySql基本介绍

  MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。

  Mysql中用到的操作指令就是SQL指令。

  我们以window下讲解mysql的启动和客户端的登录。

  

  启动和停止MySQL服务

    Mysql是一种C/S结构:客户端和服务端

    服务端对应的软件:Mysqld.exe

   

   命令行方式

    通过Windows下打开cmd控制器,然后使用命令进行管理

    Net start 服务(mysql):开启服务

    Net stop mysql:关闭服务

    

    系统服务方式

    前提:在安装的Mysql的时候将mysql添加到Windows的服务中去了

    方式1进入服务:  

    

    方式2进入服务:通过命令行:services.msc

    

    通过服务对Mysql服务器进行管理

    方案1:右键服务,然后选择开启或者停止

    方案2:双击服务,进入到服务详情界面,可以点击开启或者停止按钮

    

      mysql客户端登录mysql服务器:

      找到mysql.exe(通过cmd控制台:如果在安装的时候指定了mysql.exe所在的路径为环境变量,就可以直接访问;如果没有,那么就必须进入到mysql.exe所在路径)

      举例:

        去图书馆:1图书馆地址(文胜大楼) 2、第几层(2楼) 3、确认用户信息
      连接服务器:
        mysql -h域名或者ip地址 -P端口号 -u用户名 -p密码
        -h 和-P可以不写用默认,localhost和3306
        -u和-p是用户名和密码,用于确定客户端的身份

     

    注意事项

    1、 通常端口都可以默认:mysql坚挺的端口通常都是3306

    2、 密码的输入可以先输入-p,直接换行,然后再以密文方式输入密码

    退出客户端连接

    断开与服务器的连接:通常Mysql提供的服务器数量有限,一旦客户端用完,建议就应该断开连接。

    建议方式:使用SQL提供的指令

      Exit; //exit带分号

      \q; //quit缩写  

      Quit:

    

Mysql数据库学习总结(一)的更多相关文章

  1. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  2. MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. Mysql数据库学习笔记之数据库索引(index)

    什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...

  5. MySQL数据库学习: 01 —— 数据库的概述

    壹 概述 一 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件). 易混淆:人们常常用“数据库”这个词语来代表他们使 ...

  6. MYSQL数据库学习笔记1

      MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...

  7. mysql数据库学习目录

    前面的话 对于前端工程师来说,数据库并不是主要技能点,但是基本的增删改查操作还是需要了解的.小火柴将mysql数据库的学习记录整理如下 目录  前端学数据库之基础操作 前端学数据库之数据类型 前端学数 ...

  8. mysql数据库学习(一)--基础

    一.简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 R ...

  9. MySQL数据库学习笔记<一>

    MySQL基本概念以及简单操作   一.MySQL   MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系 ...

  10. mysql数据库学习小结

    数据库的学习可以从以下几个层次了解掌握,这样思路清晰后后面不管怎么变化都可以随时应变: 1.mysql基础知识 2.操作数据库的方法,增 删 改 查 3.jdbc连接数据库,工作原理 难点重点,如:P ...

随机推荐

  1. mooon模板的automake、autoconf、m4和libtool版本信息

    autoconf --version autoconf (GNU Autoconf) 2.59 automake --version automake (GNU automake) 1.9.6 m4 ...

  2. 解决Torch.load()错误信息: UnicodeDecodeError: 'ascii' codec can't decode byte 0x8d in position 0: ordinal not in range(128)

    使用PyTorch跑pretrained预训练模型的时候,发现在加载数据的时候会报错,具体错误信息如下: File "main.py", line 238, in main_wor ...

  3. spring boot jpa 使用<S extends T> List<S> findAll(Example<S> example)查询数据

    直接上代码 //查询条件对象 TinventivePrinciple time = new TinventivePrinciple(); //设置需要查询的条件(赋值) time.setIsTime( ...

  4. git 修改远程仓库源

    自己已经写好了一个项目,想上传到 github github 创建新项目 新建 README.md , LICENSE 本地项目添加 github 远程仓库源 不是git项目 git remote a ...

  5. CacheManager 概述

    1. CacheManager 管理缓存,而缓存可以是基于内存的缓存,也可以是基于磁盘的缓存 2. CacheManager 需要通过 BlockMananger 来操作数据: 3. 当 Task 运 ...

  6. 谢特——后缀数组+tire 树

    题目 [题目描述] 由于你成功地在 $ \text{1 s} $ 内算出了上一题的答案,英雄们很高兴并邀请你加入了他们的游戏.然而进入游戏之后你才发现,英雄们打的游戏和你想象的并不一样…… 英雄们打的 ...

  7. [Xcode 实际操作]四、常用控件-(16)为MKMapView指定地理坐标

    目录:[Swift]Xcode实际操作 本文将演示如何自定义地图视图的的地理坐标 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //首先 ...

  8. Hibernate的优化方案

    使用参数绑定 使用绑定参数的原因是让数据库一次解析SQL,对后续的重复请求可以使用生成好的执行计划,这样做节省CPU时间和内存. 避免SQL注入. 尽量少使用NOT 如果where子句中包含not关键 ...

  9. Objective-C对象的申请空间与初始化

    对象分配空间与初始化 对象分配空间与初始化 使用Objective-C语言创建一个对象有两个步骤,你必须: 为新对象动态分配内存空间 初始化新分配的内存,并赋初值 不经过如上两步,一个对象就没有完全功 ...

  10. springBoot实现socketio

    https://github.com/mrniko/netty-socketio-demo https://github.com/mrniko/netty-socketio