數據庫-MySQL 學習筆記

[TOF]mysql

SQL

1 數據庫的基本概念

  1. DataBase:DBsql

  2. 數據的倉庫。用於存儲和管理數據的倉庫數據庫

  3. 特色:①持久化存儲數據,數據就是一個文件系統安全

    ​ ②方便存儲和管理數據oop

    ​ ③使用了統一的方式操做數據庫——SQL 大數據

  4. 數據庫軟件spa

    • Oracle
    • MySQL
    • IBM DB2
    • Hive
      • Facebook開發
      • 基於Hadoop
      • 類SQL語法
      • 執行延遲高,適合處理大數據、對實時性要求低的場合

2 SQL

  1. 什麼是SQL?code

    ​ *Sructured Query Language :結構化查詢語言對象

    ​ *定義了全部關係型數據庫的規則ip

  2. SQL通用語法

    1. SQL單行或多行書寫,以==分號==結尾

    2. MySQL不區分大小寫,關鍵字建議大寫

    3. 單行註釋: -- 註釋內容

      多行註釋: /* 註釋內容 */

    mysql> show databases; -- 註釋內容 
    mysql> show databases; /* 註釋內容 */
  3. SQL分類

    • DDL(Data Definition Language)數據定義語言

      用來定義數據庫對象:數據庫、表、列等。

      關鍵字:create、drop、alter等

    • DML(Data Manipulation Language)數據操做語言

      用來對數據庫中表的數據進行增刪修改。

      關鍵字:insert、deleta、update等

    • DQL(Data Query Language)數據查詢語言

      用來查詢數據庫中表的記錄(數據)。

      關鍵字:select、where等

    • DCL(Data Control Language)數據控制語言

      用來定義數據庫的訪問權限和安全級別,及建立用戶。

      關鍵字:GRANT、REVOKE等

3 DDL:操做數據庫、表

3.1 操做數據庫:CRUD

  1. Create:建立

    mysql> CREATE DATABASE DB1; -- 建立數據庫
    mysql> create database if not exists DB1; -- 判斷建立數據庫
    mysql> create database if not exists DB3 character set gbk; -- 建立指定字符集的數據庫
  2. Retrieve:查詢

    mysql> SHOW DATABASES; -- 查詢全部數據庫的名稱
    mysql> SHOW CREATE DATABASE mysql; -- 查詢某個數據庫的字符集(UTF-8);查詢某個數據庫的建立語句
  3. Update:修改

    mysql> alter database db4 character set utf8; -- 修改字符集
  4. Delete:刪除

    mysql> drop database db4; -- 刪除數據庫
    mysql> drop database if exists db3; -- 判斷刪除數據庫
  5. 使用數據庫

    mysql> select database(); -- 查詢當前使用的數據庫名稱
    mysql> use db1; -- 使用數據庫

3.2 操做表:CRUD

  1. Create:建立

    ==數據類型==:

    • int:整數類型
    • double(5,2):小數類型,共5位、2位小數,最大999.99
    • date:日期,包含年月日 yyyy-MM-dd
    • datetime:日期,包含年月日時分秒 yyyy-MM-dd HH:mm:ss
    • timestamp:時間戳,包含年月日時分秒 yyyy-MM-dd HH:mm:ss
      • 若是未來不給這個字段賦值或NULL,則默認賦值當前系統時間
    • varchar(20):字符串,最大20個字符
      • zhangshan:8個字符
      • 張三:2個字符
    mysql> create table student( -- 表名:student
        -> id int, -- 定義列名和數據類型
        -> name varchar(32),
        -> age int,
        -> score double(4,1),
        -> birthday date,
        -> insert_time timestamp -- 這裏別加,
        -> );
  2. Retrieve:查詢

    mysql> use mysql;
    mysql> show tables; -- 查詢全部表
    mysql> desc db; -- 查詢表結構
  3. Update:修改

    mysql> alter table student rename to stu; -- 修改表名
    mysql> show create table stu; -- 查詢表的字符集
    mysql> alter table stu character set gbk; -- 修改表的字符集
    mysql> alter table stu add gender varchar(10); -- 添加一列
    mysql> alter table stu change gender sex varchar(20); -- 修改列名和類型
    mysql> alter table stu modify sex varchar(10); -- 只修改列的類型
    mysql> alter table stu drop sex; -- 刪除一列
  4. Delete:刪除

    mysql> drop table stu; -- 刪除表
    mysql> drop database if exists stu; -- 判斷刪除表

4 DML:增刪改表中數據

  1. 添加數據

    mysql> insert into stu(id,name,age) values(1,'張無忌','18'); 
    mysql> insert into stu values(2,'趙敏',17,99.9,NULL,NULL);
    • varchar類型要打「」
    • 表名後若不定義列名,則默認給全部列添加值
  2. 刪除數據

  3. 修改數據

5 DQL:查詢表中記錄

mysql> select * from stu;
相關文章
相關標籤/搜索