ข้ามไปที่เนื้อหาหลัก

Transaction

ทำความรู้จักกับ Transaction ใน Database


Transaction คือ การดำเนินการธุรกรรม ที่กระทำข้อมูลให้เกิดการเปลี่ยนจากสถานะนึง ไปเป็นอีกสถานะนึง ภายในหนึ่ง Transaction อาจจะมีหนึ่งคำสั่ง หรือหลายๆคำสั่งก็ได้ เช่น การโอนเงิน ก็จะเกิดจากการถอนเงินจากบัญชีนึง และนำไปฝากให้อีกบัญชีนึงนั่นเอง

ก่อนจะไปรู้จักอย่างอื่นเรามารู้จักกับสถานะของ Transaction ก่อน ซึ่งมีด้วยกัน 2 สถานะคือ

1.) Commit หมายถึง คำสั่งทุกคำสั่งที่เกิดใน Transaction นั้น ประมวลผลเสร็จสมบูรณ์ทุกคำสั่ง ทำให้เปลี่ยนแปลงค่าของข้อมูลใน Database อย่างถาวร

2.) Rollback หมายถึงการประมวลผลใน Transaction นั้นไม่สมบูรณ์ หรือเกิดเหตุขัดข้องขึ้นตอนรันคำสั่ง จะทำให้ Transaction นั้นถูกยกเลิก และค่าข้อมูลจะย้อนกลับไปเป็นค่าเก่า ค่าที่ก่อนจะเกิดการประมวลผล Transaction นี้ เช่น มีลูกค้าต้องการจะถอนเงินออกจากบัญชี แต่บัญชีมีเงินไม่มีเงินพอสำหรับจำนวนที่จะถอน จะทำให้เกิดการ Rollback ยกเลิก Transaction ไป

คุณสมบัติของ Transaction มี 4 อย่าง

1.) Atomicity จะมีด้วยกัน 2 states

  • Done - คือ Transaction นั้นจะประมวลผลเสร็จสมบูรณ์ทุกคำสั่ง ไม่มีผิดพลาด ข้อมูลจะปรับเปลี่ยน และโชว์ให้เห็นเหมือนเรียกดูใน Database ทันที
  • Never Started คือ ถ้าเกิดการประมวลผลใน Transaction นั้นเกิดการผิดพลาดขึ้น จะเกิดการ Rollback ผลนำข้อมูลกลับไปเป็นค่าเดิมก่อนที่จะเกิด Transaction
2.) Consistency การประมวลผล Transaction จะก่อให้เกิดการเปลี่ยนสถานะของข้อมูล ดังนั้นจะต้องรักษาความถูกต้องของข้อมูลเอาไว้ คือหลังจากประมวลผลเสร็จ ข้อมูลจะต้องอยู่ในสถานที่ถูกต้อง ถ้าไม่ถูกต้องก็จะเกิดการ Rollback

3.) Isolation คือ Transaction ที่มีการทำงานพร้อมกันในเวลาเดียวกันจากผู้ใช้หลายๆคนนั้น จะต้องไม่เกิดการรบกวน แทรกแซงกัน

4.) Durability or permanency หมายถึง Transactions ที่ทำคำสั่งเสร็จสมบูรณ์ คือเกิดการ commit จะทำให้ข้อมูลอยู่ใน Database อย่างถาวร และจะคงอยู่ แม้ว่าระบบจะล่ม

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

Spiral model

Spiral model Spiral model คือ Software Development Process หนึ่งที่ถูกพัฒนาขึ้นโดยเอาจุดแข็งของ Development Model อื่นที่ดีอยู่แล้วมาประยุกต์ ( Waterfall Mode) ใช้ตีค่าความเสี่ยงที่เกิดเพื่อจะได้ทราบว่าจุดใดมีความเสี่ยงมากน้อยขนาดไหน จะได้หาวิธีลดความเสี่ยง ซึ่งความเสี่ยงเป็นสาเหตุ ที่ทำให้การพัฒนาไม่ประสบความสำเร็จ Spiral Model เป็นโมเดลที่ถูกพัฒนาขึ้นจาก Waterfall Model ที่มีการทำงานเป็นขั้นตอนหากในขั้นตอนแรกวิเคราะห์ความต้องการไม่ดี ไม่ชัดเจน ความเสี่ยงที่ระบบจะถูกพัฒนาไม่ตรงตามความต้องการของลูกค้าสูง กระบวนการนี้จึงนำเอาข้อดีของ Prototype มาผสมผสานให้เกิดคามชัดเจนและมีการวิเคราะห์ความเสี่ยงในทุกชั้น ทำให้โอกาสที่ระบบจะล้มเหลวมีน้อยลง ตัวอย่างของ Waterfall Model หรือ The Linear Model ภายหลังถูกปรับเปลี่ยนเป็นรูปเเบบจําลองบันไดเวียน( Spiral model) เพราะเเบบเก่านั่นติดข้อจํากัดคือ ถ้าพบว่าขั้นตอนไหนผิดพลาดเเล้วตอนเสร็จกระบวนการทั้งหมด จะเเก้ไขไม่ได้เลย ต้องจําเป็นที่จะต้องเริ่มรอบใหม่( Iteration) อีกครั้งนั่นเอง               Spiral mod...

ซอฟต์แวร์ที่ใช้ในองค์กรทั่วไป

โปรแกรมประยุกต์ที่นิยมใช้ในงานธุรกิจ โปรแกรมประยุกต์ที่นิยมใช้ในงานธุรกิจ ซอฟต์แวร์ประยุกต์(application software)        เป็นซอฟต์แวร์ที่ใช้กับงานด้านต่าง ๆ ตามความต้องการของผู้ใช้ ที่สามารถนำมาใช้ประโยชน์ได้โดยตรง ปัจจุบันมีผู้พัฒนาซอฟต์แวร์ใช้งานทางด้านต่าง ๆ ออกจำหน่ายมาก การประยุกต์งานคอมพิวเตอร์จึงกว้างขวางและแพร่หลาย เราอาจแบ่งซอฟต์แวร์ประยุกต์ออกเป็นสองกลุ่มคือ ซอฟต์แวร์สำเร็จ และซอฟต์แวร์ที่พัฒนาขึ้นใช้งานเฉพาะ ซอฟต์แวร์สำเร็จในปัจจุบันมีมากมาย เช่น ซอฟต์แวร์ประมวลคำ ซอฟต์แวร์ตารางทำงาน ฯลฯ          4.1 ซอฟต์แวร์ประยุกต์ทั่วไป       ซอฟแวร์ประยุกต์ทั่วไป (general purpose software) เป็นซอฟแวร์ที่พัฒนาขึ้นมาเพื่อนำไปประยุกต์ใช้กับงานให้เหมาะสมกับลักษณะงานของผู้ใช้คอมพิวเตอร์ เช่น การจัดพิมพ์รายงาน การนำเสนอ เป็นต้น               1) ซอฟต์แวร์ประมวลคำ(word processing software) เป็นซอฟต์แวร์ประยุกต์ใช้สำหรับการพิมพ์เอกสาร สามารถแก้ไข เพิ่ม แทรก ลบ และจัดรูปแบบเอกสารได้อย่างดี เอกสาร...

Tacit Knowledge and Explicit Knowledge

  Tacit knowledge   ( ความรู้ที่ไม่ปรากฏชัดเจน )  คือความรู้ที่ไม่สามารถเขียนหรืออธิบายได้ การถ่ายโอนความรู้ประเภทนี้ทำได้ยาก จำเป็นต้องอาศัยการเรียนรู้จากการกระทำ ฝึกฝน (อยู่ในสมอง เชื่อมโยงกับประสบการณ์ ความเชื่อ ค่านิยม ไม่สามารถถ่ายทอดออกมาได้ทั้งหมด)     Explicit knowledge  ( ความรู้ที่ปรากฏชัดเจน )  คือความรู้ที่สามารถเขียนหรืออธิบายออกมาเป็นตัวอักษร ฟังก์ชั่นหรือสมการได้ (อยู่ในตำรา เอกสาร วารสาร คู่มือ คำอธิบาย คอมพิวเตอร์ อินเทอร์เน็ต ฐานข้อมูล)