วันพฤหัสบดีที่ 6 พฤศจิกายน พ.ศ. 2557

1.microsoft access

ฐานข้อมูล

1.microsoft access





           ไมโครซอฟท์แอคเซส (Microsoft Access) คือ โปรแกรมเพื่อพัฒนาระบบฐานข้อมูล มีตารางเก็บข้อมูลและสร้างแบบสอบถามได้ง่าย มีวัตถุคอนโทลให้เรียกใช้ในรายงานและฟอร์ม สร้างมาโครและโมดูลด้วยภาษาเบสิก เพื่อประมวลผลตามหลักภาษาโครงสร้าง สามารถใช้โปรแกรมนี้เป็นเพียงระบบฐานข้อมูลให้โปรแกรมจากภายนอกเรียกใช้ก็ได้
ไมโครซอฟท์แอคเซส (Microsoft Access) ต่างกับ วิชวลเบสิก (Visual Basic) หรือ

วิชวลเบสิกดอทเน็ต (Visual Basic .Net) เพราะ วิชวลเบสิกไม่มีส่วนเก็บข้อมูลในตนเอง แต่สามารถพัฒนาโปรแกรมได้หลากหลาย เช่น พัฒนาโปรแกรมควบคุมอุปกรณ์ โปรแกรมประยุกต์ทางวิทยาศาสตร์ เกมส์ หรือเชื่อมต่อกับระบบฐานข้อมูลภายนอก เป็นภาษาที่เหมาะกับการพัฒนาโปรแกรมประยุกต์ (Application) ส่วนไมโครซอฟท์แอคเซสเหมาะสำหรับนักพัฒนาระบบฐานข้อมูลที่ไม่ต้องการโปรแกรมที่ซับซ้อน ความสามารถของโปรแกรมที่สำคัญคือสร้างตาราง แบบสอบถาม ฟอร์ม หรือรายงานในแฟ้มเดียวกันได้ ด้วยคุณสมบัติพื้นฐานและวิซซาร์ดจึงอำนวยให้พัฒนาโปรแกรมให้แล้วเสร็จได้ในเวลาอันสั้น มีเครื่องมือที่อำนวยความสะดวกในการพัฒนาระบบฐานข้อมูลอย่างครบถ้วน

2.mysql

2.mysql




       MySQL คือ Open Source Relational Database Management System (RDBMS) ซึ่งตอนแรก MySQL นั้นเป็นของบริษัท MySQL AB แต่ในปัจจุบันผู้ที่เป็นเจ้าของ MySQL คือ บริษัท Oracle โดย MySQL นั้นถือว่าเป็นฐานข้อมูลที่ได้รับความนิยมในการนำมาใช้งานบน Web Application เป็นอย่างมาก ซึ่งเป็นส่วนหนึ่งในสิ่งที่เรียกว่า LAMP (Linux, Apache, MySQL และ PHP) โดยตัวอย่าง Web Application ที่มีการใช้ MySQL เช่น TYPO3, Joomla, WordPress, phpBB, MyBB, Drupal รวมไปทั้งเว็บไซต์ขนาดใหญ่ที่มีการใช้ MySQL ในส่วนหนึ่งของ Production เช่น Wikipedia, Google (ไม่ใช่ส่วนของการค้นหา), Facebook, Twitter, Flickr,Nokia.com และ YouTube เป็นต้น

ด้านกราฟฟิก (Graphical)
MySQL รองรับการทำงานด้านกราฟฟิก (GUI) ด้วยโดยมีโปรแกรมต่าง ๆ ที่ให้การสนับสนุน MySQL อย่างมากมายเช่น phpMyAdmin, Navicat, OpenOffice.org, SQLBuddy, Sequel Pro, SQLYog, Toad for MySQL, Adminer, DaDaBIK และอื่น ๆ อีกมากมายที่ไม่ได้กล่าวถึง (หากสนใจตัวไหนลองนำชื่อโปรแกรมในค้นหาใน Google อีกทีครับ)

การเขียนโปรแกรม (Programming)
MySQL รองรับ และสนับสนุนการทำงานบนหลาย ๆ ระบบ เช่น AIX, BSDi, FreeBSD, HP-UX, eComStation, i5/OS, IRIX, Linux, Mac OS X, Microsoft Windows, NetBSD, Novell NetWare, OpenBSD, OpenSolaris, OS/2 Warp, QNX, Solaris, Symbian, SunOS และอื่น ๆ อีกมาย


คุณสมบัติ (Feature)
MySQL มี Feature อยู่อย่างมากมาย โดยจะขอแนะนำเฉพาะที่สำคัญเท่านั้นครับ
1. สนับสนุน Cross-platform support
2. รองรับ Stored procedures
3. รองรับ Triggers และ Cursors
4. สนับสนุน Information schema
5. สนับสนุน SSL
6. รองรับการทำ Query caching
7. รองรับการทำ Sub-SELECTs
8. รอบรับการทำ Replication ทั้งแบบ Master-Master Replication และ Master-Slave Replication
9. Full-text indexing และ searching using MyISAM engine

10. รองรับ Unicode

3.SQL Server

3.SQL Server 




     Microsoft SQL Server เป็นโปรแกรมในการบริหารจัดการฐานข้อมูลที่ดีที่สุดของ Microsoft โดยเป็นในรูปแบบของ Relational Database Management System หรือที่เรียกว่า RDBMS ซึ่งจะเป็นบริหารข้อมูลให้กับผู้ใช้บริการต่าง ๆ รองรับการทำงานได้จำนวนมาก และมีความสามารถมากมาย เทียบเท่ากับระบบฐานข้อมูลอื่น ๆ เช่น Oracle, DB2, Informix เป็นต้น มีคุณสมบัติเด่นเรื่องของ User Interface ที่ใช้งานได้ง่าย

ภายใต้การจัดการของ Microsoft SQL Server นั้น จะมีฐานข้อมูลที่ Microsoft SQL Server จะต้องใช้ และมีมาตั้งแต่ต้น นับตั้งแต่ Install กันเลย โดยฐานข้อมูลนี้จะอยู่ในกลุ่มของ System Database ซึ่งแต่ละฐานข้อมูลจะมีหน้าที่ในการทำงานต่าง ๆ กันดังนี้

Master Database

   มีความสำคัญมากสุด ใช้สำหรับเก็บข้อมูลที่สำคัญของระบบ เช่น Meta Data พวก User, Login Information, Error Message,Linkedserver รวมถึงบอกตำแหน่งใน Primary File ในแต่ละข้อมูลอีกด้วย โดยหากฐานข้อมูลนี้มีปัญหาก็จะส่งผลต่อการทำงานของ Microsoft SQL Server เลยทีเดียว

MSDB Database

     สำคัญ รองจาก Master เก็บข้อมูลเกี่ยวกับ Alert, Job, Schedule  ซึ่งถูกใช้โดยบริการของ SQL Server Agent ซึ่งเป็นบริการที่ทำงานอัตโนมัติ เช่น Backup ข้อมูลอัตโนมัติแต่ละวัน การแจ้งเตือนเมื่อระบบมีปัญหา โดยจะทำการส่ง Email ให้กับผู้ดูแลระบบ เป็นต้น

Distribution Database

        ใช้ในการ Replication ของฐานข้อมูล เพื่อทำให้ข้อมูลของ Microsoft SQL Server แต่ละที่มีความตรงกัน

Model Database

       เป็นฐานข้อมูลที่เป็นต้นแบบ (Database Template) กรณีที่เราสร้าง Database ใหม่ Microsoft SQL Serverจะเอา Model Database นี้มาเป็นตัวตั้งต้น

TempDB Database

       ไว้ในการเก็บข้อมูลที่เป็นชั่วคราว Temporary สำหรับ process ที่จำเป็นต้องการนำ data มาพักไว้ก่อนแล้วค่อยนำไปทำอย่างอื่นต่อ ลบทุกครั้งที่มีการ Restart Service หรือ Shutdown ระบบ



4. Oracle

4. Oracle




          คือ Object – Relational Database Management System (ORDBMS) มีความสามารถทำงานได้ทั้งในรูปแบบ Rational และบางคุณสมบัติของ Object Oriented เป็นผลิตภัณฑ์จากบริษัทออราเคิล
และยังเป็น RDBMS เชิงพาณิชย์ตัวแรกของโลก ออราเคิลเซิร์ฟเวอร์ มีความสามารถโดดเด่นในด้าน
การจัดการฐานข้อมูล มีความน่าเชื่อถือสูง (reliable) ด้วยเทคโนโลยี Rollback Segment
ซึ่งเป็นลิขสิทธิ์ของบริษัทออราเคิล โดยปกติ Log file หรือไฟล์ที่เก็บ Transaction ของระบบ
ตัวอย่างเช่น การโอนเงินจากบัญชีธนาคารหนึ่งไปเข้าอีกบัญชีธนาคารหนึ่ง การทำงานมีอยู่สองรูปแบบ
คือ AIJ(After Image Journal) และ BIJ (Before Image Journal) โดย AIJ จะเก็บข้อมูลที่เป็น New Value ก่อนทำการแก้ไข ส่วน BIJ จะเก็บข้อมูลที่เป็น Old Value หลังจากการทำการแก้ไขข้อมูล ในส่วนของ MS SQL Server ซึ่งเป็นฐานข้อมูลเหมือนกันนั้นจะมี AIJ อย่างเดียว ในขณะที่ Oracle มีทั้ง AIJ และ BIJ ซึ่งทาง Oracle เรียกว่า Rollback Segment


ประเภทของ Oracle
ลักษณะงาน ซอฟแวร์ของ Oracle มี 2 แบบ คือ
1. Personal Oracle
2. Oracle Server

     ทั้ง 2 แบบนี้มีลักษณะการใช้งานและคำสั่งเหมือนกัน แต่ต่างกันที่ Personal Oracle คือฐานข้อมูลที่เมื่อติดตั้งบนเครื่องคอมพิวเตอร์แล้ว ผู้ใช้จะต้องนั่งทำงานกับ Oracle นี้ที่หน้าเครื่องท่านั้น ส่วนของ Oracle Server คือ ฐานข้อมูลในลักษณะเซิร์ฟเวอร์ คือเครื่องคอมพิวเตอร์ที่ติดตั้งโปรแกรมของ Oracle Server ไว้ และยอมให้ผู้ใช้งานเรียกฐานข้อมูล หรือจัดการกับข้อมูลจากเครื่องคอมพิวเตอร์อื่น ๆ ได้(เรียกเครื่องอื่นๆ เป็นไคลเอนต์) ดังนั้นถ้าต้องการให้มีผู้เรียกใช้ข้อมูลจากฐานข้อมูลหลาย ๆ คนได้ ก็ควรต้องเลือกแบบที่เป็น Oracle Server


การทำงานของ Oracle

      ในการติดต่อใช้งานกับ Oracle Database นั้น เราต้องใช้ภาษา SQL (ซึ่งบางท่านเรียกว่า SEQUEL)
ซึ่งเป็นภาษาที่ใช้ในการกำหนด และจัดการกับ Database (DDL, DML)
การทำงานกับ Database ในแบบ Relational Database นั้นหมายความว่า Database Engine จะมีการจัดเก็บข้อมูล ในลักษณะที่เป็นกลุ่มของข้อมูลที่มีความสัมพันธ์กัน ใน 1 Database สามารถที่จะมี Table ตั้งแต่ 1 table เป็นต้นไป และในแต่ละ Table ก็สามารถมีได้หลาย Column หลาย Row
โดยปกตินั้น Oracle Database Software จะแบ่งออกเป็น 4 ประเภทด้วยกัน คือ
? Oracle Enterprise Edition จะเป็น Edition ที่มีความสามารถครบที่สุด มี Feature ตามที่ Oracle โฆษณาไว้ทุกอย่าง
? Oracle Standard Edition จะมีความสามารถน้อยกว่า Enterprise Edition ซึ่งถูกออกแบบเพื่อรองรับงานระดับ Department โดยความสามารถที่ขาดหายไปจาก Enterprise Edition ก็อย่างเช่น การทำ Parallel Processing และ Function ที่เกี่ยวกับ Data Warehousing เป็นต้น
? Oracle Personal Edition จะมีความสามารถใกล้เคียงกับ Enterprise Edition เกือบทุกอย่าง เพียงแต่ว่า Edition นี้ถูกออกแบบให้ใช้งาน Database ได้เพียงแค่คนเดียว
? Oracle Lite ถูกออกแบบเพื่อให้ใช้งานกับอุปกรณ์ประเภท Mobile อย่าง Palm หรือ Windows CE เป็นต้น