Exzilla.net
Contact
Home -> Articles -> Start Learning and Using Oracle Database
 
Features
Forums
Files
Blogs
Document ID: # ora01-01
July 20, 2004  
Document Title : Start Learning and Using Oracle Database 
fuju

Document Details :

ถ้าท่านเป็นคนหนึ่งที่ต้องการเริ่มต้นเรียนรู้ Oracle Database แต่ไม่รู้ว่าจะเริ่มต้นอย่างไรดี Article นี้จะบอกท่านได้

Introduction

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

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

ด้วยประเด็นที่ Oracle เป็น Database ที่อยู่ในท้องตลาดที่มีคนรู้จักมากว่า 20 ปี ประเด็นหลักในแง่ของ Software Engineer อย่างเช่น Scalability ที่คุณมี Engine Database อยู่บนเครื่อง PC ที่สามารถรองรับ User ที่ใช้งาน ตั้งแต่ภายในบริษัท ไปจนถึงใช้งาน Internet และจุดหนึ่งที่หลายคนเลือกใช้ Oracle คือสิ่งที่คุณเรียนรู้ในการใช้งาน Oracle ใน version ก่อนๆ คุณก็สามารถนำมาประยุกต์ใช้กับ version ปัจจุบันได้ตลอด หรือแม้แต่ประเด็นหลักๆ อย่างเรื่องของความปลอดภัย และการรับประกันข้อมูลของคุณ ที่จะไม่สูญหายไป

สำหรับท่านที่อยากใช้ Oracle ขึ้นมาแล้วในตอนนี้ แต่ไม่รู้ว่าจะเริ่มต้นอย่างไรดี ในบทความนี้เป็น Guideline สำหรับท่านที่จะใช้งาน Oracle Database แต่ไม่รู้ว่าจะเริ่มต้นอย่างไรดี

Software Download and Basic information

การที่จะเริ่มเรียนรู้ Oracle อาจจะหาหนังสืออ่านได้ตามท้องตลาด ซึ่งมีด้วยกันหลายสำนักพิมพ์ อย่างเช่น O'rielly, Wrox หรือ Oracle Press ก็ตาม จะมีหนังสือตั้งแต่ระดับเบื้องต้นไปจนถึงระดับผู้ใช้ที่มีความชำนาญ หรืออาจจะลองแวะไปที่เว็บไซต์ technet.oracle.com ซึ่งก็มีข้อมูลในแง่ของ technical ที่จะรู้จัก product แต่ละตัวของ Oracle ซึ่งก็รวมถึง Oracle Database ด้วย

ที่ technet.oracle.com นี้ จะมี Software ให้เรา Download มาทดลองเรียนรู้ หรือใช้งาน รวมถึง Manual ทุกๆ เล่มของ Oracle และในกรณีที่คุณใช้งานแล้วมีปัญหา ก็จะมีส่วนของ technical discussion ให้แลกเปลี่ยนความคิดเห็นกัน

Database Installation

หลังจากที่ได้ Download Software มาเป็นที่เรียบร้อยแล้ว ก็คงต้องขึ้นอยู่กับ Platform ของ Database ที่ Download มา เพราะ Oracle เอง ก็มี Platform ให้เลือกมากมาย ไม่ว่าจะเป็น Windows, Linux, Solaris หรือ Unix ในหลายตระกูล ซึ่งตอนที่คุณ download software ก็จะมี Installation Guide แนบติดมาด้วย ซึ่งก็จะเป็นการดี ถ้าเราอ่าน Installation Guide เสียก่อน เพราะว่าตัว Database เป็น Software ที่มีความซับซ้อน ในบาง OS Platform อาจจะต้องมีการปรับแต่ง OS กันก่อน ซึ่งใน Installation Guide นั้น ก็จะมีการพูดถึง Resource ที่ทาง Oracle recommend ไว้ อย่างเช่น Harddisk หรือ RAM

แต่ใน Oracle version ใหม่ๆ การ Install จะเป็น GUI ซึ่งหน้าตาจะเหมือนกันทุก Platform อยู่แล้ว สำหรับรายละเอียดเพิ่มเติม สามารถดูได้จาก Installation Guide ใน Platform นั้นๆ ซึ่งคุณสามารถหาได้จาก OTN (Oracle Technology Network, http://technet.oracle.com)

Database configuration

เนื่องด้วย Oracle เองเป็น Database Engine ที่ทำงานในลักษณะที่เป็น Client/Server ถ้าเรามี Database Server อยู่ แล้วต้องการให้เครื่องในฝั่ง Client ไม่ว่าจะเป็น Architecture แบบ 2-Tier, 3-Tier หรือ Multi-Tier ก็ตาม ตอนที่จะติดต่อกับ Oracle ต้องมีการตกลงร่วมกันระหว่าง Client หรือ Application Server ที่จะมาคุยกับ Database Server ว่าจะใช้ Protocol ใดในการคุย อย่างใน Oracle version ล่าสุด Oracle Database เองก็ได้เปิดทางเลือกให้เราสามารถติดต่อกับ Database Server ได้ ไม่ว่าจะเป็น iiop, http หรือ net8 ตัวอย่างเช่น เราต้องการสร้าง Application ที่เป็น Multi-Tier โดยใช้ Java Servlet Technology ถ้าเป็นเช่นนี้ ในการติดต่อระหว่าง Application Server กับ Database Server ก็ต้องอาศัยการทำงานผ่าน JDBC เพื่อไปติดต่อกับ net8 และไปคุยกับ Database Server ด้วยวิธีนี้สิ่งที่เราต้องทำ ก็คงต้องมีการ Config Network กับ Oracle ทั้งฝั่ง Server และฝั่ง Client ให้คุยกันได้เสียก่อนที่เราจะเขียนโปรแกรมต่อไป (รายละเอียดในการติดต่อกับ Oracle Database สามารถอ่านได้ในแต่ละ Section ของ Exzilla.net เช่น ถ้าคุณต้องการเขียน PHP ติดต่อกับ Oracle Database ก็ลองดูในส่วนของ PHP Technology ที่ Home Page ของ Exzilla.net นะครับ)

นอกจากในส่วนของ Network แล้ว ถ้าคุณต้องการศึกษา หรือใช้งาน Option หรือความสามารถเพิ่มเติมของ Oracle Database คุณอาจจะต้องดูรายละเอียดของแต่ละส่วนจาก Document ของ Oracle ซึ่งจะอธิบายรายละเอียดต่างๆ ไว้อยู่แล้ว

ในตอนที่คุณทำการ Install Oracle Database จะมีการถามว่า เราจะสร้าง Database ด้วยหรือเปล่า ในกรณีที่คุณเลือก Install แบบ Custom แต่ถ้าคุณเลือกแบบ Typical ก็จะมีการสร้าง Default Database มาให้ ซึ่งคุณสามารถที่จะนำ Database มาทดลองใช้งานดูได้

Test connection to Database Server

ก่อนที่เราจะเริ่มพัฒนาโปรแกรมกับ Oracle Database นั้น เราคงต้องเรียนรู้วิธีการติดต่อกับ Oracle Database ว่าจะใช้งานกับ Oracle Database อย่างไร ในการสั่งให้ Oracle Database ทำงาน เราต้องสั่งด้วย SQL Command ซึ่ง Oracle จะมีโปรแกรมมาให้เราใช้ในการติดต่อกับ Oracle Database ยกตัวอย่าง ในกรณีที่คุณต้องการสร้าง Table ต้องการ Insert ข้อมูล หรือ Update ข้อมูล คุณก็สามารถทำงานกับ Oracle Database ได้โดยผ่านโปรแกรม SQLPlus ซึ่งเป็น Interactive Program ที่ทำงานลักษณะผ่าน Command Line และ SQLPlus นี้เองก็เป็นวิธีที่สะดวกวิธีหนึ่งในการติดต่อกับ Oracle Database โดย SQLPlus สามารถที่จะทำงานอยู่บนเครื่องเดียวกับ Oracle Database หรืออยู่ต่างเครื่องกันก็ได้ ถ้าต่างเครื่องกัน ตอนที่ SQLPlus คุยกับ Oracle Database ก็จะอาศัย net8 ในการคุยกัน

ดูรายละเอียดการ Config Oracle Client ที่ Article Checking and understanding Oracle Client configuration (by fuju)

Database Design

แต่ในการพัฒนางานจริงๆ เราก็รู้ว่า มีหลายขั้นตอนในการพัฒนาโปรแกรม โดยเริ่มจากการออกแบบ Database ถ้า Database เรามีไม่กี่ Table การใช้ SQLPlus ก็เป็นเรื่องที่ไม่ลำบากนัก แต่ถ้าเรามี Table เป็นหลักร้อยหลักพัน มี Constrain มีความสัมพันธ์กันเยอะแยะ การใช้ SQLPlus ทำงานก็คงไม่สะดวก ซึ่งในตอนนี้ เราอาจจะต้องหา Tool เข้ามาช่วยในการ Design ซึ่ง Tool ที่พูดถึงก็จะมีลักษณะที่เป็น Case Tool อย่างเช่น Oracle Designer, Rational ROSE

แต่ใน Article นี้ขอยกตัวอย่าง ระบบที่มีแค่ 5 Tables โดยที่คำสั่งในการสร้าง Table ตัวอย่างเหล่านี้ จะมาตอนที่เราลง Oracle Database แล้ว โดยส่วนใหญ่ใน version ที่เป็น 8i File นี้จะอยู่ที่ $ORACLE_HOME/sqlplus/demo โดยจะมี File ชื่อ demobld.sql อยู่ เนื่องด้วยมีจำนวน Table ที่ไม่มาก และมี Script ในการสร้าง Table ต่างๆ มาแล้ว เราจึงเลือกใช้ SQLPlus ในการทำงาน เพื่อให้ผู้อ่าน Article นี้ได้เข้าใจภาพรวมในการทำงานกับ Oracle Database ก่อน

Create new schema

ตอนที่จะเริ่มใช้งาน Oracle นั้น หลังจากที่เราลง Oracle Database เรียบร้อยแล้ว ก็จะมี User ของระบบที่เป็น sys และ system มาให้ ซึ่ง user sys จะเป็นเจ้าของ Database ส่วน system จะเป็น user ที่มีหน้าที่ดูแลรักษาระบบ แต่การที่จะใช้ User เหล่านี้ มาทำงานจริง ก็คงไม่เหมาะสม เราควรจะสร้าง user ขึ้นมาใหม่ เพื่อเป็นเจ้าของ Table ที่เรา Design ไว้

เริ่มต้นใช้งาน

ขั้นตอนแรก เราต้อง Start Oracle Database และ Listener ก่อน (อ่านข้อมูลเพิ่มเติมได้ที่ Oracle Administrator Guide)

ขั้นตอนต่อมา คือการสร้าง User เพื่อให้ user นั้นสามารถทำงานได้

ขั้นตอนต่อมา สร้าง Table และ Insert ข้อมูลต่างๆ ไปยัง Table ที่สร้างไว้

ดู Step การทำงานได้จาก File listing ของการทำงานนะครับ

การใช้งานคำสั่ง SQL Command จะเป็น SQL 3 Standard ซึ่งเราสามารถหาอ่านได้จากหนังสือทั่วไป หรือลองดูที่ ebook นี้ก็ได้

Make Sample Data by using SQLPlus or SQLLoad or your good program

จากตัวอย่างด้านบน เป็นการนำข้อมูลเข้า โดยใช้ Script ที่เป็น SQLPlus แต่บางครั้งข้อมูลเรามีจำนวนเยอะมากๆ ก็คงไม่เหมาะ ทาง Oracle ก็มีทางเลือกให้ถ้าเราต้องการ Load ข้อมูลเข้า Database จากข้อมูลที่เป็น Text เราก็สามารถทำได้โดยใช้ Utility ที่ชื่อ SQLLoad ของ Oracle ได้ ซึ่งรายละเอียดเพิ่มเติมที่ Basic SQLLoader (by fuju)

What's next?

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

1. Database Admin (DBA)

    ถ้าคุณสนใจที่จะทำงานกับ Oracle Database ในแง่ของ Database Admin หรือ DBA คุณอาจจะต้องศึกษาเพิ่มในเรื่องการดูแลรักษา Database การ Backup/Recovering และการ Tuning

2. Application Developer

    แต่ถ้าคุณสนใจจะเป็น Application Developer ก็คงขึ้นอยู่กับภาษา และเทคโนโลยีที่คุณเลือกใช้ อย่างเช่น ถ้าคุณเลือกใช้ Tool ของ Oracle อย่าง Oracle Developer คุณคงต้องให้เวลาในการศึกษาการใช้งาน Tool พวกนี้ หรือว่า คุณเป็น Java Lover คุณคงต้องไปศึกษา Java Programming และ JDBC เพื่อมาคุยกับ Oracle

More info

ebooks

Recommended books (You can download Oracle books from http://technet.oracle.com)

 
  • Oracle Concepts, 1999, Oracle Corporation
  • SQL*PLUS user's Guide and Reference, 1999, Oracle Corporation
Website

Class

  • Oracle Thailand Education ( tel: 662-6329400)
Community
See Also
 
 



Copyright (c) 2001-2005 - Exzilla.net -  All Rights Reserved.
Contact Us | Privacy Policy | Terms & Conditions