MySQL基礎概念

最近參加了一個打卡學習羣,補習一下MySQL的知識。打卡要求即是輸出博客。數據庫

軟件安裝及環境配置

MySQL的安裝與配置我便不在這裏贅述了。由於我使用的是Mac系統,所以圖形化工具使用的是navicat premium。百度上面有如何破解的,若是你也須要能夠本身去百度一下。編程

數據庫的基本概念

什麼是數據庫

  • 定義:數據庫就是按照必定數據結構存儲數據的倉庫。
  • 解釋:其實咱們能夠理解爲就是存儲數據的地方。放在計算機中來講的話,就是存取數據的軟件

關係型數據庫

  • 定義:創建在關係型模型基礎上的數據庫
  • 解釋:具體什麼叫關係型數據庫我以爲咱們沒有必要深究,我以爲咱們能夠簡單的下個定義,就是使用關係表的數據庫。

二維表

二維表其實就是關係表,二維表是由行和列組成的。bash

行就是元組,是一組相關的數據,裏面包含描述一件事務的若干個鍵。例如:數據結構

num Name Age sex
1 godfrey 18 female
2 nero 20 female

其中num爲1的就是爲一行數據函數

列就是相同鍵類型的數據集合,例如上表中的num、name、age、sex都給自爲一列工具

主鍵

  • 什麼是主鍵:一個表中能表示元組惟一性的列,一個表中只能有一列
  • 解釋:就是說這個列的值不能有重複。

MySQL

MySQL與數據庫的關係

能夠說MySQL是數據庫的一個實例,遵循數據庫的設計原則。同時由於MySQL是關係型數據庫,因此MySQL也能夠說是關係表的集合。學習

數據表

數據表就是存放數據的地方,在MySQL中數據表就是關係表。spa

視圖

視圖就是結果集,就是咱們使用查詢語句返回的表。設計

視圖的特性
  • 視圖是虛表,是由若干個基礎表組成的
  • 視圖支持增刪改查,可是有限制條件
視圖的做用

視圖主要是用來控制權限,咱們能夠參考以下使用場景,咱們如今有一個成績單要公佈出來,可是想要實現匿名制,也就是說每一個人均可去查詢最高分、最低分、每一個分段有多少人等等信息,這是咱們可使用視圖,事先查詢好一個隱藏姓名的成績視圖,而後以供其餘人在這個表的基礎上查詢code

視圖的基礎語法
VIEW `view_user_course` AS (
    SELECT
        `uc`.`id` AS `id`,
        `u`.`name` AS `username`,
        `c`.`name` AS `coursename`
    FROM Student Where age >10;
);
複製代碼

查詢語句的結果就會返回給‘view_user_course’視圖,咱們以後須要查詢什麼能夠直接在視圖上面查詢。

SELECT
    id,
    username,
    age
FROM
    view_user_course
WHERE
    username = '小張'
複製代碼

存儲過程

存儲過程通俗的來講就是編程中的函數或者方法,有輸入輸出,有if、while等控制語句、還能夠聲明變量。就像是一個函數。並且存儲過程有一個很重要的有點是,只有第一次會編譯執行,以後即是直接被調用執行,速度會相較於查詢語句更快,由於查詢語句是每次都要編譯再執行。

相關文章
相關標籤/搜索