MYSQL<小筆記1–1>

paul chou
6 min readAug 5, 2020

因為想成為一名商業分析師,SQL算是一個蠻重要的一項技能,趁著剛當完兵的時間學習了一些基本的語法以及,基本常識希望可以方分享給想學習的人,也算是我自己一個小筆記。

首先我想解釋一下什麼是Database:

我來舉個例子好了,一本電話簿裡面的姓名跟電話就是database,那SQL就是一個查詢這個電話簿的語言方法:

我要paul的電話,那我就是要先找到p開頭的人名,找到paul之後我才能找到他的電話,也就是英文所稱的Database Management System(DBMS)

database的說明

通常我們說的database 也就是說 Database Management System 跟 Database的意思

那這有很多程式像是PostgreSQL ,MYSQL, Oracle, Datebase SQLite使用這些語法其實都大同小異。主要是這些DBMS可以帶來的特色不一樣。

既然知道了什麼事database,簡單來說SQL 就是這些程式的語言

那我練習的方式是使用GoormIDE 雲端(網路上有查詢的到如何下載)

一開始使用要先打上mysql-ctl cli; 才能開始使用

資料會跳一下等個幾秒鐘就可以開始了。首先要知道怎麼建立一個database server,database 就像是一個資料櫃,在每一個資料櫃裡面的資料夾就是table,在資料夾裡面有很多資料 就是 data

這是舉例:我開了一間咖啡書店,那我的Databse 就是 Store 之後我Tables 也就是我賣的東西書跟咖啡,那我的Data就是書名價錢等等等

圖1–1

好!解釋完了架構,首先要建立一個Database:

那在語法上要用:

create database store;

檢查是否已經創出來了:

show databases;

這邊會出現很多個 database 只要注意到你之前創的有沒有出現就好

再來就是進入這個database 在創立一個Table以及Table的內容:

進入這database:

use store;

創造一個書的Table:

create table books (title varchar(30), price int);

我來解釋一下title就是圖1–1上面說的 我想要創造一個放Title的欄位跟價錢的欄位(想像成你在用Excel 會把Title 跟 price 放在第一列的時候),但SQL 要比較細一點 要自己規定title,只能是文字 ,price 只能是價錢

那 varchar 就是文字的意思 int是數字的意思

創造資料:

insert into books (title, price) values (‘History’, 55);

這邊比較麻煩 我一步一步地講解要先宣告你要創造的資料是要寫進哪一個Table所以是insert into books,然後你想要寫入什麼(title, price),insert into books(title, price) — →你要告訴系統你要寫什麼進去,最後就是你想寫進去的資料是什麼,insert into books (title, price) values (‘History’, 55);

最後是檢查:

檢查這個欄位:

show columns from books;

裡面的Type就是解釋說可以是字母還是數字等等,當然還有不同的Data Type這個我下一篇再說明,Null的意思是可以接受沒輸入值,Default是空著不寫的預設值,至於Key跟Extra 我也會之後說明。

檢查我寫出的成品:

select * from books;

*→這個符號的意思是所有欄位,如果有學其他語言像Python 也是所以的意思。

到這邊為止都跟得上嗎?那繼續囉!接下來我要解釋怎麼更改Null 跟 Default 跟Key這邊

要更改 NULL、Default、key值要從創立Table這邊開始,還記得怎麼創立Table嗎?

根據上面這個columns 表格 你會發現這邊的 Null 、Default跟Key都被我更改了,在 Null 這邊被改成了No 在Default這邊的price從Null變成了99999那這樣我的創立清單方法就變成下面這樣:

create table books (
books_id int not null auto_increment,
title varchar(30) not null ,
price int not null default 99999
primary key(books_id));

那至於key這邊要知道auto_increment 的意思是自動累加好比說這個ID的順序你不用一個一個寫1、2、3、4、5 寫auto_increment 就會自動加,要注意的是在最後面要加一個primary key(books_id),的意思是”用來保證欄位在資料表中的唯一性,每一筆資料在資料表中都必需是獨一無二的”。

有發現嗎?其實不難,就是在 Data type 後面加上 Not null(也就是說不可以基接受沒輸入值),再來是Default 如果是空格的預設值是什麼

這是第一階段的介紹,練習完了。

那我們來把Table刪掉的話,就用drop table:

drop table books;

把database刪掉的話就使用 drop database:

drop database store;

這是最基本的SQL之後我會把完整版慢慢的PO上來,一開始一定會很難懂,慢慢練習之後就可以抓到這語法的精髓!

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

No responses yet

Write a response