數據庫 MySQL 的基礎操作

數據庫是什麼,和數據結構有什麼關係?

數據庫是一個軟件,數據結構是一個學科,數據庫軟件在實現過程中,是非常依賴數據結構的

 

數據已組織並存儲數據的軟件,一般是存儲在硬盤上,(也有些是存儲在內存中)

 

數據庫主要可以分爲兩大類:

  1. 關係型數據庫(MySQL):數據的組織形式使用“表”作爲結構,類似於excel,首先得有一個表頭,表頭中約定了有很多列,以及每一列的類型,插入的數據就是表中的一行,這一行裏的每一個列都需要和表頭結構對應,對於數據的“約束”(對於數據合法性的校驗)比較強、
  2. 非關係型數據庫:數據的組織形式使用“鍵值對”作爲結構,類似於Map。存儲的時候都是需要指定 key 和 value。

 

每組數據的 value 中都需要包含哪些字段?沒有明確要求,對於數據中的約束性更低 。

相比於關係型數據庫,犧牲了一部分的功能,但是換來了更高的效率以及更強的水平擴展能力,更適用於分佈式系統中。

 

SQL是一種編程語言,“結構化的查詢語言”,操作數據庫時主要就是使用 SQL 這種編程語言


進入數據庫:

在CMD中輸入:

mysql -uroot -p

 

庫操作

1、查看數據庫

MySQL 服務器是一個數據庫軟件,這個軟件運行過程中可以維護多個“邏輯”上的數據庫--->若干個標的集合可以理解爲一個“邏輯”上的數據庫

 

show databases;

 

 

2、創建數據庫

create database XXX;

 

當我們再次創建名稱爲java_0523 的數據庫時就會報錯

 

此時我們可以運用如下命令:

create database if not exists java_0523;

 

此時就命令成功:

 

3、使用數據庫

use XXX;

 

當前有多個數據庫,通過“使用”操作,就能選中某個數據庫

cmd 中的複製粘貼:選中內容,enter 複製鼠標右鍵粘貼


4、刪除數據庫

drop database XXX;

先顯示一下全部數據庫:

 

 

 

刪除該數據庫後:

 


有了數據庫之後,要想真的去存儲組織數據,還需要數據表,創建表的時候就需要指定表結構,

int

double

decimal

varchar

test


表操作

1、創建表

create table student( -> id int, -> name varchar(20) -> );

 

 

 

2、查看錶結構

desc XXX;

 

 

創建表的時候,如果名稱和關鍵字衝突了可以使用反引號 ``引起來,就可以解決這個問題

 

3、刪除表操作

drop table [表名];

 

 

 

MySQL 是一種一種客戶端-服務器版本

1、數據庫的地位

對用戶來說:

庫——IDEA的一個工程

表——類

表裏一行——對象

表裏一列——屬性

對文件系統來說(硬盤管理文件):

庫——文件夾

表——一組文件

2、DDL/DML(Insert增/Delete刪/Select查/Update改)

 

3、SQL語句:

庫:

1、CREATE DATABASE 庫名

2、SHOW DATABASES 查看哪些庫

3、DROP DATABASE 刪除

4、SHOW CREATE DATABASE 庫名 查看建庫語句

5、USE 庫名  設置默認庫

表:

1、CREATE TABLE 表名     (列定義);    //建表

2、SHOW TABLES ;                                   //查看哪些表

3、DROP TABLE 表名;                                //刪表

4、SHOW CREATR TABLE 表名;

      DESC 表名   ;                                       //查看錶結構

 

增刪改查(CRUD)

1、插入數據

insert into [表名] values (內容);

 

指定列插入

insert into student (id,name) values (2,'蔡');

 

 

2、查看數據

select * from [表名];

* 是一個通配符,意思是吧所有列都查找出來

 


 

UNIQUE  VS    PRIMARY KEY

相同點:不允許重複

不同點:UNQUE 可以爲 NULL ,同時 NULL 不視爲重複

              PRIMARY 不允許爲空,MySQL實際存儲是,依賴主鍵存儲


表的設計

表的三大範式:

1、表中的每個字段含義是獨立的,不可再分的(業務相關的)

2、字段和完整主鍵有關係

3、字段和主鍵是直接關係

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章