MySQL數據庫的基本使用簡單易懂


MySQL數據庫的基本使用

一、數據庫概述

1. 基本介紹

數據庫就是以一定格式進行組織的數據的集合。通俗來看數據庫就是用戶計算機上 一些具有特殊格式的數據文件的集合

2. 數據庫的特點

持久化存儲
讀寫速度極高
保證數據的有效性
對程序支持性非常好,容易擴展

3. 數據庫管理系統

數據庫管理系統(英語:Database Management System,簡稱DBMS)是為管理數據庫而設計的軟件系統,包括三大部分構成:

  1. 數據庫文件集合. 主要是一系列的數據文件, 作用是存儲數據.
  2. 數據庫服務端. 主要負責對數據文件以及文件中的數據進行管理.
  3. 數據庫客戶端. 對外通信

4. 數據庫的分類

  • 關系型數據庫

所謂的關系型數據庫RDBMS,是建立在關系模型基礎上的數據庫,借助於集合代數等數學概念和方法來處理數據庫中的數據,本質上使用一張二維表來表示關系。

  1. oracle 銀行,電信等項目
  2. ms sql server:在微軟的項目中使用
  3. sqlite:輕量級數據庫,主要應用在移動平台
  4. mysql:web時代使用最廣泛的關系型數據庫。
  • 非關系型數據庫
  1. 鍵值存儲數據庫(key-value): 可以通過key來添加、查詢或者刪除數據庫,Memcached、Redis、MemcacheDB等
  2. 列存儲(Column-oriented)數據庫: 列存儲數據庫將數據存儲在列族中,一個列族存儲經常被一起查詢的相關數據,Cassandra、HBase
  3. 面向文檔(Document-Oriented)數據庫: 面向文檔數據庫會將數據以文檔形式存儲,MongoDB、CouchDB
  4. 圖形數據庫: 圖形數據庫允許我們將數據以圖的方式存儲,Neo4J、InforGrid

二、MySQL數據庫的使用

1. 常用數據類型如下:

  • 整數:int,bit
  • 小數:decimal
  • 字符串:varchar,char
  • 日期時間: date, time, datetime
  • 枚舉類型(enum)

特別說明的類型如下:

  • decimal表示浮點數,如 decimal(5, 2) 表示共存5位數,小數占 2 位.
  • char表示-固定長度的字符串,如char(3),如果填充'ab'時會補一個空格為 'ab ' .
  • varchar表示可變長度的字符串,如varchar(3),填充'ab'時就會存儲'ab'
  • 注意 : 對於圖片、音頻、視頻等文件,不存儲在數據庫中,而是上傳到某個服務器上,然后在表中存儲 這個文件的保存路徑. 字符串 text 表示存儲大文本,當字符大於 4000 時推薦使用, 比如技術博客.

2. 數據約束

  • 主鍵 primary key: 物理上存儲的順序. MySQL 建議所有表的主鍵字段都叫 id, 類型為 int unsigned.
  • 非空 not null: 此字段不允許填寫空值.
  • 惟一 unique: 此字段的值不允許重復.
  • 默認 default: 當不填寫字段對應的值會使用默認值,如果填寫時以填寫為准.
  • 外鍵 foreign key: 對關系字段進行約束, 當為關系字段填寫值時, 會到關聯的表中查詢此值是否存在, 如果存在則填寫成功, 如果不存在則填寫失敗並拋出異常.

三、數據庫相關的操作


數據庫(database)的操作

Linux下運行數據庫的命令

  1. 數據庫登錄

    mysql -uroot -p
    
  2. 提示輸入密碼

    mysql -uroot -p'passwd'
    
  3. 數據庫服務器狀態的查看

    sudo service mysql status
    
  4. 數據庫服務器停止

    sudo service mysql stop
    
  5. 數據庫服務器啟動

    sudo service mysql start
    
  6. 退出數據庫

    Ctrl+d
    quit
    exit
    

數據庫系統命令

  1. 查看所有數據庫

    show databases;
    
  2. 查看版本

    select version();
    
  3. 查看當前使用的數據庫

    select database();
    
  4. 顯示當前時間

    select now();
    
  5. 使用數據庫

    use 數據庫名;
    
  6. 創建數據庫

    create database 數據庫名 charset=utf8;
    
  7. 刪除數據庫

    drop database 數據庫名;
    

表(table)結構的操作

  1. 展示當前數據庫中所有的表

    show tables;
    
  2. 查看表結構的描述信息

    desc stu;
    
  3. 創建一個表結構

    CREATE TABLE table_name()
    
  4. 修改表的名字

    alter table 原表名 rename 新表明;
    
  5. 修改表-添加字段

    alter table 表名 add 列名 類型;
    
  6. 修改表-修改字段:重命名版

    alter table 表名 change 原名 新名 類型及約束;
    
  7. 修改表-修改字段:只改約束和類型

    alter table 表名 modify 列名 類型及約束;
    
  8. 修改表-刪除字段

    alter table 表名 drop 列名;
    
  9. 刪除表-慎重

    drop table 表名;
    
  10. 查看表的創建語句-詳細過程

    show create table 表名;
    

表數據的操作

  1. 增(插入)

    insert [into] 表名稱 (列1,列2,列3),(列1,列2,列3)#需要哪個填哪個,不寫默認按照原數據順序  values (值1, 值2, 值3),(值1, 值2, 值3)#要插入的數據值,可以多個元組;
    
  2. delete from 表名 where 條件;
    
  3. update 表名 set 字段名=新值(可多個參數,逗號隔開) where 條件(可用比較公式);
    
  4. select * from stu;
    select age,name from stu;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM