บอกเล่าเรื่องราว ความรู้สึก — สัปดาห์ที่ 4 ของโปรแกรมการฝึก WLB 2 MONTHS BOOTCAMP
เวลาผ่านมาหนึ่งเดือนแล้วสำหรับโปรแกรมการฝึกนี้ การฝึกทำซ้ำในด้านของการออกแบบสถานการณ์ทดสอบ ยังเกิดขึ้นอยู่ตลอดทั้งสัปดาห์ และมีการฝึกด้านเทคนิคเพิ่มขึ้นมาคือการใช้งานคำสั่งใน SQL ที่สอนโดยพี่นัท จากสยามชำนาญกิจ ในตอนเย็น 18:00–19:00 น. ของทุกวัน
เร่ิมต้นสัปดาห์ด้วยการฝึกทำซ้ำในเรื่องของ API Test Automation with Postman ที่สอนโดย Beth Marshall เปิดให้เรียนฟรีที่ Link เนื้อหาหลัก ๆ คือ
- Chapter 1.1 Install and Set up
- Chapter 1.2 Tour of Postman
- Chapter 1.3 Importing Tests
- Chapter 2 Creating and Running Mocks in Postman
- Chapter 3 Monitors in Postman
- Chapter 4 Postman Workspaces
- Chapter 5 Newman Runner
สำหรับเนื้อหาที่ได้เรียนรู้เพิ่มเติมจากเดิม คือเรื่องของการใช้ Mock และ Monitors
โดยการเรียนของเว็บไซต์นี้ก็จะมี Quiz ให้ทำหลังเรียนจบในแต่ละตอน ซึ่งถ้าเราตอบได้ถูกหมดทุกข้อ เราจะได้เครดิตสะสมไว้ในเว็บไซต์ฟรี สามารถใช้เรียนเนื้อหาอื่น ๆ ที่ติดเครดิตได้
การเรียน SQL สอนโดย พี่นัท
เนื้อหาที่ได้เรียนรู้ในวันแรก ก็จะเป็นการปูพื้นฐานให้เราเข้าใจว่า SQL คืออะไร เกิดขึ้นตอนไหน และใช้ทำอะไร
SQL Commands มีอยู่ 5 กลุ่มหลัก ๆ คือ
- DDL — Data Definition Language ที่ใช้บ่อย ๆ คือ CREATE, DROP, ALTER และ TRUNCATE
- DQL — Data Query Language ที่ใช้บ่อย ๆ คือ SELECT
- DML — Data Manipulation Language ที่ใช้บ่อย ๆ คือ INSERT, UPDATE และ DELETE
- DCL — Data Control Language ที่ใช้บ่อย ๆ คือ GRANT, REVOKE
- TCL — Transaction Control Language ที่ใช้บ่อย ๆ คือ COMMIT, SAVEPOINT, ROLLBACK, SET TRANSACTION และ SET CONSTRAINT
ต่อมาคือการ Run ไฟล์ Docker compose ที่ทางพี่นัทได้จัดเตรียม data bases ไว้ให้ โดยใช้ Terminal ในการรันคำสั่ง
คำสั่งเชื่อมต่อ Network ก่อนเริ่มทำงาน docker compose
docker network create our-network
คำสั่งให้ docker compose เริ่มทำงาน
docker-compose up -d --force-recreate
คำสั่งให้ docker compose หยุดทำงาน
docker-compose down -v
การเข้าถึงคำสั่ง Stop docker
docker exec -it mysql bash
คำสั่งเชื่อมต่อกับ Database
mysql -h 127.0.0.1 -u root -p [DATABASE_NAME]
ตัวอย่าง คำสั่งเชื่อมต่อกับ Database
mysql -h 127.0.0.1 -u root -p simple
หลังจากคำสั่งนี้ จะขึ้นให้เราใส่รหัสผ่าน เราก็จะใส่ตามที่พี่นัทได้ตั้งไว้ ผลลัพธ์ที่ได้ออกมาก็จะเป็นดังรูป
สามารถสร้าง Database ได้ด้วยคำสั่ง CREATE
CREATE DATABASE employeesdb;
หรือ
CREATE DATABASE employeesdb
CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;
คำสั่งแสดง Data bases ทั้งหมดที่มีอยู่
SHOW DATABASES;
คำสั่งเรียกใช้งานแต่ละ Data base
USE DATABASE_NAME;
ตัวอย่างการเรียกใช้งาน Data base
USE simple;
คำสั่งลบ Data base
DROP DATABASE [IF EXISTS] database_name;
คำสั่งสร้างตารางข้อมูลใน Data base
CREATE TABLE new_table_name (
col_name1 datatype constraint,
col_name2 datatype constraint,
col_name3 datatype constraint,
.........
);
ตัวอย่างการสร้างตารางข้อมูลใน Data base
CREATE TABLE employee_list(
id int NOT NULL AUTO_INCREMENT,
name varchar(45) NOT NULL,
occupation varchar(35) NOT NULL,
gender ENUM('male','female','not-specific') NOT NULL DEFAULT 'not-specific',
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
);
คำสั่งแสดงตารางข้อมูล
SHOW [FULL] TABLES;
or
SHOW TABLES LIKE pattern;
SHOW TABLES WHERE expression;
คำสั่งการเพิ่มคอลัมน์ในตารางข้อมูล
ALTER TABLE table_name
ADD new_column_name column_definition
[ AFTER column_name ];
หรือถ้าหากอยากเพิ่มทีเดียวหลาย ๆ คอลัมน์
ALTER TABLE table_name
ADD new_column_name column_definition,
ADD new_column_name column_definition,
[ AFTER column_name ],
;
ตัวอย่างการเพิ่มคอลัมน์ในตารางข้อมูล
ALTER TABLE employee_list
ADD address varchar(100) NOT NULL,
ADD salary decimal(6,2) NOT NULL,
ADD birth_date DATE NULL,
AFTER name,
จบไปแล้วกับครึ่งแรกในการเรียน SQL ในสัปดาห์นี้ เรายังเหลืออีกหลายคำสั่งที่เราจะได้เรียนในสัปดาห์ต่อไป
สรุปสิ่งที่ได้ในสัปดาห์ที่ 4
- ได้ทบทวนในเรื่องของ Automation API Testโดยใช้ Postman ทำให้เราได้ใช้เครื่องมือบ่อย ๆ และเริ่มใช้เครื่องมือได้คล่องมือขึ้นมากกว่าเดิม
- ได้เรียนรู้การใช้งาน SQL เห็นถึงความสำคัญของการจัดการข้อมูล ได้เรียนรู้คำสั่งที่หลากหลาย ได้ทั้งทบทวนสิ่งที่เคยเรียนมาและสิ่งใหม่ที่ไม่เคยรู้มาก่อน
- การฝึกทำซ้ำเป็นเรื่องสำคัญอันดับต้น ๆ ของ Bootcamp นี้ ส่วนตัวคิดว่าการที่เราเรียนไปแล้วไม่ได้เอาไปฝึกต่อด้วยตัวเองบ่อย ๆ ก็เหมือนเรียนไปแล้วไม่ได้อะไรกลับมา เพราะสุดท้ายแล้วเราก็จะลืมมันอยู่ดี