CodeGym /หลักสูตรจาวา /All lectures for TH purposes /ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูล

ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูล

All lectures for TH purposes
ระดับ , บทเรียน
มีอยู่

ประวัติฐานข้อมูล: ฐานข้อมูลและ DBMS

นานมาแล้วในประเทศหนึ่งของอเมริกา ในบริษัทไอทีขนาดใหญ่ ครั้งหนึ่งหน้าที่ในการจัดเก็บข้อมูลจำนวนมากได้เกิดขึ้น คุณถามอะไรยากขนาดนั้น? ท้ายที่สุด บริษัทขนาดใหญ่ก็มีเงิน ซึ่งหมายความว่าคุณสามารถซื้อฮาร์ดไดรฟ์เพิ่มได้ แค่นั้น

ความคิดที่ดี แต่อย่างที่เขาว่า ปีศาจอยู่ในรายละเอียด ข้อมูลจำนวนมากไม่เพียงต้องจัดเก็บเท่านั้น แต่ยังต้องเปลี่ยนแปลงด้วย และต้องทำตัวอย่างต่างๆ จากข้อมูลเหล่านี้ ยิ่งไปกว่านั้น คุณต้องเลือกข้อมูลที่แตกต่างจากที่ต่างๆ และยังทำได้รวดเร็วและสวยงามอีกด้วย

โดยทั่วไปแล้วทุกอย่างเป็นไปตามปกติ: ลูกค้าต้องการสิ่งที่ไม่มีอยู่จริง และการตัดสินใจซื้อฮาร์ดไดรฟ์ไม่ได้ผลในครั้งนี้

ดังนั้นโปรแกรมเมอร์ของบริษัทไอทีแห่งนี้จึงทุ่มงบประมาณก้อนโตให้กับตัวเอง ทำงานวิจัย และเมื่อหมดงบก็นำเสนองานนำเสนอโดยเสนอให้จัดเก็บข้อมูลในรูปแบบฐานข้อมูล ในฐานข้อมูล ข้อมูลทั้งหมดจะถูกจัดเก็บไว้ในตาราง และแต่ละตารางจะถูกจัดเก็บไว้ในไฟล์แยกต่างหาก ทุกสิ่งที่ชาญฉลาดนั้นเรียบง่ายและทุกอย่างได้ผล

แต่การนำเสนอดังกล่าวไม่เหมาะกับลูกค้า

  • เงินอยู่ที่ไหน Lebowski?
  • เหตุใดฐานข้อมูลจึงดีกว่าการจัดเก็บข้อมูลแบบเก่าในรูปแบบของชุดไฟล์
  • เราต้องการทางออกที่ดีจริงๆ ไม่ใช่แค่นั้น!
  • และใช้งบประมาณทั้งหมดหรือไม่

มีความเงียบในห้องนำเสนอ อย่างไรก็ตาม สถานการณ์นี้ได้รับการช่วยเหลือโดยไม่คาดคิดสำหรับทุกคน โดยนักพัฒนารุ่นเยาว์ซึ่งกล่าวว่ามีการแนบโปรแกรมพิเศษกับฐานข้อมูล - DBMS ( Database Management System) ซึ่งสามารถ:

  • สร้าง แก้ไข และลบฐานข้อมูล
  • ทำการเปลี่ยนแปลงฐานข้อมูล กล่าวคือ: เพิ่มบันทึกใหม่ ลบรายการเก่า และเปลี่ยนแปลง
  • และยังรวดเร็วเป็นพิเศษในการเลือกข้อมูลที่หลากหลาย

และโปรแกรมเมอร์ก็กำลังจะเสร็จสิ้นการ ออกแบบภาษาพิเศษสำหรับการกรองข้อมูล - SQL และพวกเขากล่าวว่าด้วยความช่วยเหลือของภาษา SQL มหัศจรรย์นี้ ผู้จัดการทุกคนสามารถกรองและรับข้อมูลจากฐานข้อมูลได้อย่างง่ายดาย

โปรแกรมเมอร์ยังออกแบบภาษาไม่เสร็จดังนั้นจึงไม่มีคำอธิบายเกี่ยวกับ SQL และ DBMS ในงานนำเสนอ

เพื่อความสุขของทุกคน ลูกค้ารู้สึกประทับใจกับคำอธิบายที่ได้ยิน แสดงความคิดที่ขัดแย้งกันหลายอย่างว่าภาษาใหม่นี้ควรเป็นอย่างไร และแม้กระทั่งจัดสรรงบประมาณสำหรับการปรับแต่ง

ผู้จัดการและผู้อำนวยการด้านเทคนิคเริ่มแสดงความยินดีกับความสำเร็จของโครงการและไปฉลองงานนี้ทันทีโดยไม่ทราบว่าโปรแกรมเมอร์รุ่นเยาว์ในเรื่องราวทั้งหมดนี้เป็นบุคคลที่สำคัญที่สุด ...

DBMS และ MySQL ยอดนิยม

ในขณะนี้ (ฤดูร้อนปี 2022) มี DBMS ยอดนิยมหลายร้อยรายการ ดังนั้นการเรียนรู้เกี่ยวกับบางรายการจะเป็นประโยชน์สำหรับคุณ ควรเริ่มจากอะไรดี…

ในแง่หนึ่ง ตลาด DBMS สำหรับองค์กรมีมานานหลายทศวรรษแล้ว ดังนั้นจึงมีทั้งผู้นำที่เป็นที่รู้จักและผู้มาใหม่ที่มีแนวโน้ม ในทางกลับกัน ความต้องการทางธุรกิจมีการเติบโตอย่างต่อเนื่อง ดังนั้นวิธีการสร้างโครงสร้างพื้นฐานด้านไอทีของบริษัทต่างๆ จึงมีการเปลี่ยนแปลงอยู่เสมอ

ตอนนี้คุณจะไม่ทำให้ใครประหลาดใจด้วยฐานข้อมูลจากคลัสเตอร์ของเซิร์ฟเวอร์สองสามพันเครื่องที่มีการชาร์ดในแนวนอนและแนวตั้ง ธุรกรรมแบบกระจาย ตลอดจนแผนกไอทีของผู้ดูแลระบบสองสามโหลที่ไปเปลี่ยนฮาร์ดไดร์ฟเซิร์ฟเวอร์ตาม ตารางเวลาที่กำหนดไว้

โดยทั่วไป หากคุณทำงานให้กับบริษัทขนาดใหญ่ เป็นไปได้มากว่าพวกเขาจะจ่ายเงินเป็นจำนวนมากสำหรับฐานข้อมูลของตน และใช้สิ่งนี้:

ฐานข้อมูลออราเคิล

Oracle เปิดตัวฐานข้อมูลแรกในปี 1979 (43 ปีที่แล้ว) เธอตั้งชื่อ Oracle 2.0 ทันทีเพื่อโน้มน้าวใจลูกค้าว่าผลิตภัณฑ์นี้ไม่ใช่ของใหม่ แต่ผ่านการทดสอบตามเวลา

เวอร์ชันปัจจุบันของฐานข้อมูลคือ Oracle 21 cโดยที่ตัวอักษรcมาจากคำว่าcloudซึ่งตามที่เป็นอยู่ เป็นการบอกเป็นนัยว่า Oracle ก้าวทันยุคสมัย และโซลูชันต่างๆ เข้ากันได้อย่างสมบูรณ์แบบกับเทคโนโลยีคลาวด์ทั้งหมด

เซิร์ฟเวอร์ Microsoft SQL

Microsoft ทำเงินได้มากมายไม่ใช่การขาย Windows แต่เป็นโซลูชันเซิร์ฟเวอร์สำหรับธุรกิจขนาดกลางและขนาดใหญ่ Microsoft Office, Microsoft SharePoint, Microsoft Server เป็นต้น และแน่นอน ทั้งหมดนี้ต้องใช้ฐานข้อมูลที่ดี ดังนั้น บริษัทจำนวนมากที่ใช้ผลิตภัณฑ์และโซลูชันของ Microsoft จึงถูกบังคับให้ใช้ฐานข้อมูลของตน

DBMS ของ Microsoft เรียกง่ายๆ ว่าSQL Serverดังนั้นหากคุณได้ยินคำถามว่า "คุณเคยทำงานกับ SQL Server หรือไม่" ในการสัมภาษณ์ ให้รู้ว่านี่ไม่ใช่ DBMS ที่เป็นนามธรรม แต่เป็น Microsoft SQL Server

PostgreSQL

นี่เป็น DBMS ฟรีที่ดี ซึ่งมักจะใช้ไม่เฉพาะกับบริษัทขนาดเล็กและขนาดกลางเท่านั้น แต่รวมถึงบริษัทขนาดใหญ่ด้วย นี่เป็นหนึ่งในฐานข้อมูลที่ Amazon AWS เสนอให้เป็น DB-as-service

มายเอสคิวแอล

MySQL เป็นฐานข้อมูลโอเพ่นซอร์สฟรีที่ได้รับความนิยมอย่างมาก มีการบันทึกไว้อย่างดี ทำงานเร็ว และรองรับคุณสมบัติที่หลากหลาย จนถึงปัจจุบัน DBMS เวอร์ชันที่ 8 นี้พร้อมใช้งานแล้ว

ในปี 2551 Sun ถูกซื้อซึ่ง Oracle ซื้อในปี 2552 และเป็นประโยชน์ต่อเธอเท่านั้น - ผลิตภัณฑ์มีการพัฒนาและปรับปรุงอย่างต่อเนื่อง

เราจะได้เรียนรู้วิธีการทำงานกับฐานข้อมูลโดยใช้MySQL Community Server 8.0 เป็นตัวอย่าง .

ตารางในฐานข้อมูล: คอลัมน์และคอลัมน์

DBMS ที่แตกต่างกันสามารถจัดเก็บข้อมูลในรูปแบบที่แตกต่างกัน ดังนั้นเราจะใช้ตัวเลือกที่ง่ายและคลาสสิคที่สุด - MySQL DBMS

และทันทีคำถามคือจะจัดเก็บเช่นเอกสารทางบัญชีได้อย่างไร? ตัวเลือกที่ง่ายที่สุดคือจัดเก็บเอกสารแต่ละฉบับเป็นไฟล์ Excel จากนั้นสามารถจัดเก็บเอกสารที่เกี่ยวข้องทั้งหมดไว้ในโฟลเดอร์เดียว นี่คือวิธีการทำงานของ MySQL

การเปรียบเทียบอีกอย่าง: ในภาษา Java คุณมีคลาสและแพ็กเกจ ในโครงการของคุณ แต่ในขณะเดียวกัน คลาสและแพ็กเกจจะแสดงบนดิสก์เป็นไฟล์และโฟลเดอร์ มีสิ่งที่คล้ายกันอยู่ใน MySQL

ข้อมูล MySQL ถูกจัดเก็บในรูปแบบของตารางซึ่งรวมกันเป็นฐานข้อมูลแต่ในขณะเดียวกัน ตารางและฐานข้อมูลจะถูกนำเสนอบนดิสก์ในรูปแบบไฟล์และโฟลเดอร์ ฐานข้อมูลคือโฟลเดอร์ และไฟล์ในนั้นคือตาราง

แต่ละ ตารางประกอบด้วยคอลัมน์และแถว ตัวอย่าง:

สำคัญ! แต่ละคอลัมน์มีชื่อและประเภทข้อมูลดังนั้นเซลล์ทั้งหมดในคอลัมน์เดียวกันจึงต้องเก็บค่าประเภทเดียวกัน

สามารถวาดการเปรียบเทียบระหว่างตารางใน MySQL และคลาสใน Java ตารางคือคลาส ตารางเหมือนกับคลาส มีชื่อเฉพาะ คอลัมน์ตารางคือเขตข้อมูลคลาส คอลัมน์ เช่น เขตข้อมูล มีชื่อและประเภทเฉพาะ แถวของตารางคืออินสแตนซ์ของคลาสในภาษาจาวา

คลาสสามารถอยู่ได้โดยไม่มีวัตถุ และตารางสามารถอยู่ได้โดยไม่มีแถว ใน Java คุณสามารถสร้างวัตถุใหม่ได้ และใน MySQL คุณสามารถเพิ่มแถวใหม่ในตารางได้ คุณสามารถเปลี่ยนค่าฟิลด์ของวัตถุได้ และใน MySQL คุณสามารถเปลี่ยนค่าในแถวได้

ถูกต้องยิ่งขึ้นที่จะบอกว่าตารางไม่ใช่คลาส แต่เป็นคอลเล็กชันของออบเจกต์ของคลาสหนึ่งๆ หากใน MySQL เรามีตารางพนักงานที่มีข้อมูลเกี่ยวกับพนักงาน ดังนั้นใน Java เราจะใช้ คอลเลกชัน ArrayList.

และแน่นอนว่าคำถามเกิดขึ้นทันที: จะรับข้อมูลบางอย่างจากคอลเล็กชันนี้ได้อย่างไร

ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION