FAQ
Frequently Asked Questions
- หลักสูตรออราเคิลแต่ละหลักสูตรที่เปิดสอน มีหลักสูตรที่ควรผ่านก่อน (Prerequisite) หรือไม่
- อยากทราบว่าแต่ละหลักสูตรที่เปิดสอนเหมาะกับผู้เรียนระดับใดบ้าง
- หากเพิ่งเริ่มต้นเรียนรู้ Oracle ควรเริ่มที่ใด
- ทางบริษัทมีรูปแบบการ training แบบใดบ้าง
- อยากทราบรายละเอียดเรื่อง Oracle Certification
- ต้องสอบวิชาอะไรบ้าง หากจะสอบ OCA และ OCP
- อยากทราบว่าจะสอบ Oracle Certified ได้ที่ไหน
- หากสนใจเรียนรู้ Oracle ควรจะมีพื้นฐานความรู้เรื่องระบบฐานข้อมูลมากเพียงใด
- ภาษา SQL และ PL/SQL ต่างกันอย่างไร
- สายการทำงานเกี่ยวกับ Oracle นั้น แบ่งออกเป็นด้านใดบ้าง
หลักสูตรออราเคิลแต่ละหลักสูตรที่เปิดสอน มีหลักสูตรที่ควรผ่านก่อน (Prerequisite) หรือไม่
ความรู้พื้นฐานของ Oracle ทั้งในส่วนของ Administration และ Developer คือ ภาษา SQL ถ้าหากมีความรู้ด้าน database กับ ภาษา SQL มาบ้างแล้ว สามารถเรียนได้ตามลำดับของหลักสูตรที่เปิดสอนได้เลย เช่น ถ้าสนใจที่จะเรียนทางด้าน Oracle Database Administrator ก็สามารถเริ่มเรียนได้ตั้งแต่ Oracle Database 10g Administration Workshop I หรือหากสนใจที่จะเรียนทางด้าน Oracle Developer ก็สามารถเริ่มเรียนได้ตั้งแต่ Oracle Forms Developer หรือ Oracle Reports Developer ตามที่สนใจ แต่ถ้าไม่มีพื้นฐาน ภาษา SQL แนะนำว่า ควรเรียน Oracle Database 10g SQL Fundamentals I ก่อน
อยากทราบว่าแต่ละหลักสูตรที่เปิดสอนเหมาะกับผู้เรียนระดับใดบ้าง
ทุกระดับ ตั้งแต่ผู้ที่เป็น end-user จนถึงระดับ DBA ตามที่ได้มีการแบ่งหลักสูตรไว้ที่หน้า Oracle course
หากเพิ่งเริ่มต้นเรียนรู้ Oracle ควรเริ่มที่ใด
แนะนำว่า ควรเรียน Oracle Database 10g SQL Fundamentals I
ทางบริษัทมีรูปแบบการ training แบบใดบ้าง
รูปแบบการ training ของเรามีทั้งหมด 4 แบบ ดังนี้
- in-house : เป็นการเรียนการสอนให้กับพนักงานที่บริษัทของลูกค้า ลูกค้าเป็นผู้เลือกหลักสูตรเอง
- course@VT : เป็นการเรียนการสอนที่บริษัทของเราเอง หลักสูตรที่ีเปิดจะเปิดตามที่มีผู้สนใจ หรือเปิดตามที่กลุ่มผู้เรียนต้องการ
- outdoor - seminar : เป็นการสัมมนานอกสถานที่ เหมาะสำหรับบริษัทที่ต้องการจัดฝึกอบรมและพักผ่อนพร้อมกันไปในตัว
- OT2T : เป็นโปรแกรมสำหรับชาวต่างชาติที่ต้องการเรียน Oracle และสนใจการท่องเที่ยวในประเทศไทย
คลิกที่นี่สำหรับรายละเอียด Oracle training
อยากทราบรายละเอียดเรื่อง Oracle Certification
จากที่ซอฟท์แวร์ของ ORACLE ได้รับความนิยมแพร่หลาย ความต้องการนักพัฒนาและผู้ใช้งานก็มีมากขึ้นเป็นลำดับ แต่การที่จะทราบได้ว่าบุคคลใดมีความสามารถในการใช้ซอฟท์แวร์นั้นก็เป็นไปได้ยากและขาดมาตรฐานอ้างอิง ORACLE ได้จัดให้มีการทดสอบ และออกเอกสารรับรองความสามารถให้กับผู้ใช้งานซอฟท์แวร์ ORACLE โดยแบ่งตามระดับความสามารถและกลุ่มของซอฟท์แวร์ ซึ่งได้แก่
Oracle Certified Associate (OCA)
ประกาศนียบัตรนี้เป็นระดับแรกสุด โดยผู้ที่เข้าทำการทดสอบจะต้องได้รับการทดสอบและผ่านตามเกณฑ์ที่กำหนดเป็นจำนวน 2 - 4 วิชา จึงจะได้ประกาศนียบัตรนี้ อนึ่ง เนื้อหาที่ทำการทดสอบในระดับนี้นั้น จะเป็นเนื้อหาพื้นฐานเบื้องต้นเกี่ยวกับการใช้ซอฟท์แวร์ Oracle
มหาวิทยาลัยในประเทศไทยหลายแห่งได้ใช้ OCA นี้เป็นส่วนหนึ่งของการศึกษาในระดับมหาบัญฑิต (ปริญญาโท) แต่เนื่องจากความรู้ที่นำมาใช้ในการทดสอบ OCA นี้ เป็นเพียงความรู้เบื้องต้น ถ้าจะนำประกาศนียบัตร OCA นี้ ไปใช้ในการสมัครงานนั้น จะไม่ได้ผลเท่ากับการมีประสบการณ์ทำงานตรงกับตำแหน่ง หรือสำเร็จการศึกษาปริญญาโท จึงมีคำแนะนำให้ทำการทดสอบในระดับที่สูงขึ้นไป
Oracle Certified Professional (OCP)
ประกาศนียบัตรนี้เป็นระดับถัดขึ้นมา โดยผู้ที่เข้าทำการทดสอบจะต้องได้รับการทดสอบและผ่านตามเกณฑ์ที่กำหนด เป็นจำนวน 4 - 6 วิชาจึงจะได้ประกาศนียบัตรนี้ ผู้เข้าทำการทดสอบสามารถสอบเป็น OCA ก่อนแล้วค่อยสอบเพิ่มจนครบ หรือสอบให้ครบเพื่อเป็น OCP ภายในหนเดียวเลยก็ได้
เนื้อหาที่ทำการทดสอบ OCP นั้น จะครอบคลุมการใช้งานประมาณ 80 - 90 % ของการใช้งานโดยทั่วๆ ไป ในประเทศไทยมีผู้ได้รับประกาศนียบัตร OCP นี้มากที่สุด แต่ก็เพียง 200 - 300 คนเท่านั้น การที่ได้รับประกาศนียบัตร OCP นั้น สามารถนำมาใช้ในการสมัครงานได้เป็นอย่างดี และเป็นที่ยอมรับอย่างกว้างขวางทั้งในประเทศไทยและต่างประเทศ
ถ้าผู้อ่านมีความตั้งใจที่จะมีประกาศนียบัตรของ Oracle สักใบนั้น ขอแนะนำว่าให้เลือกประกาศนียบัตร OCP นี้
Oracle Certified Master (OCM)
ประกาศนียบัตรนี้เป็นระดับสูงสุด โดยผู้ที่เข้าทำการทดสอบนั้น จะต้องผ่านการทดสอบ OCP มาก่อน และเพิ่มวิชาเฉพาะด้าน ผู้ที่ทำการทดสอบ OCM นี้ จะต้องมีความรู้และความชำนาญเฉพาะด้าน เหมาะสำหรับผู้ที่ทำงานด้านที่ปรึกษา (Consultant)
ในประเทศไทยมีผู้ได้รับประกาศนียบัตรนี้น้อยที่สุด
ต้องสอบวิชาอะไรบ้าง หากจะสอบ OCA และ OCP
เข้าใจว่าคำถามนี้สำหรับผู้ต้องการสอบ OCA และ OCP ของฝั่ง DBA ดังนั้นวิชาของการสอบ OCA มี 2 วิชาคือ
- เลือกสอบวิชาใดวิชาหนึ่งจากวิชาเหล่านี้ :
- วิชา 1Z0-051 Oracle Database 11g: SQL Fundamentals I (หลักสูตร SQL Fundamentals I 11g)
- วิชา 1Z0-007 Introduction to Oracle9i SQL (หลักสูตร SQL Fundamentals 9i)
- วิชา 1Z0-047 Oracle Database SQL Expert
- วิชา 1Z0-042 Oracle Database 10g: Administration I (หลักสูตร Database Administrator Workshop I)
หากสอบผ่าน 2 วิชานี้ก็จะได้ OCA
สำหรับ OCP ก็จะมีเพิ่มจาก 2 วิชานี้มาอีก 1 ตัวคือ วิชา 1Z0-043 Oracle Database 10g: Administration II (หลักสูตร Database Administrator Workshop II) หากสอบผ่านและเรียนกับ Oracle ตาม course ที่ทาง Oracle กำหนด อย่างน้อย 1 วิชา ก็จะได้รับ OCP
อยากทราบว่าจะสอบ Oracle Certified ได้ที่ไหน
รายชื่อสถานที่สอบ Oracle Certified ในประเทศไทย
สามารถ register online และหาข้อมูลสำหรับสถานที่สอบอื่นๆได้ที่ http://www.pearsonvue.com/oracle/
หากสนใจเรียนรู้ Oracle ควรจะมีพื้นฐานความรู้เรื่องระบบฐานข้อมูลมากเพียงใด
ควรมีความรู้ความเข้าใจในระบบฐานข้อมูลพอสมควร เช่น ในเรื่อง Database System, Database Design รวมทั้งภาษาที่ใช้กับระบบฐานข้อมูล Oracle ซึ่งได้แก่ ภาษา SQL และ PL/SQL
ภาษา SQL และ PL/SQL ต่างกันอย่างไร
SQL เป็นภาษาที่ใช้เพื่อจัดการข้อมูลในฐานข้อมูลทั่วไป ตัวอย่างเช่น การ Select, Insert, Update, Delete ซึ่งภาษา SQL เป็นภาษาที่มี interactive กับ user ในทันที่ ส่วน PL/SQL นั้น คำว่า PL ย่อมาจาก Procedural Language พัฒนาโดย Oracle เพื่อเป็น extension ในการใช้คำสั่ง SQL ให้ทำงานแบบ procedural กับฐานข้อมูล ซึ่ง PL/SQL ถือว่าเป็นเครื่องมือใช้พัฒนาระบบงานที่เพิ่มความสามารถให้กับการใช้ SQL ใน Oracle ได้เป็นอย่างดี
สายการทำงานเกี่ยวกับ Oracle นั้น แบ่งออกเป็นด้านใดบ้าง
สายการทำงานของ Oracle แบ่งออกเป็น 2 สายใหญ่ คือ
- สายด้าน Developer ได้แก่ ผู้พัฒนาระบบ Application ซึ่งก็คือ SA (System Analyst) และ Programmer ในที่นี้จึงเรียกว่า Developer
- สายด้าน Database Administrator (DBA) ซึ่งได้แก่ ผู้ดูแลระบบฐานข้อมูล
Tips
Recently tips added to Practice Book by VTTech
- select name from v$database;
- select tablespace_name, substr(file_name,1,70) from dba_data_files;
- select member from v$logfile;
- select name from v$controlfile;
How to rename ORACLE_SID (Oracle Name)
- alter database backup controlfile to trace;
- Modify (and optionally rename) the created trace file:
- Find the line reading # Set #2. RESETLOGS case
- Remove all lines above this line
- Change the line containing the database name from CREATE CONTROLFILE REUSE DATABASE "ORA9" RESETLOGS NOARCHIVELOG to CREATE CONTROLFILE SET DATABASE "CAT" RESETLOGS NOARCHIVELOG
Note, in my case, the database is running in noarchive log mode. The corresponding line reads ARCHIVELOG otherwise.
- Remove the line reading RECOVER DATABASE USING BACKUP CONTROLFILE
- Remove lines starting with #
How to rename datafile
- alter database rename file 'c:\test\a.dat' to 'c:\test\b.dat'
- orapwd file=c:\oracle\920\database\pwdTSH2.ora password=password entries=10
- oradim -new -sid TSH2 -intpwd password -startmode a -pfile c:\oracle\920\database\spfileTSH2.or
Super fast Database Copying/Cloning
How to fix if EM doesn't work properly
- emca -deconfig dbcontrol db
- emca -repos drop
- emca -repos create
- emca -config dbcontrol db
- or
- emca -deconfig dbcontrol db -repos drop
- emca -config dbcontrol db -repos create
- or
- emctl stop dbconsole
- emctl config emkey -repos -sysman_pwd <sysman password>
- emctl secure dbconsole -sysman_pwd <sysman password>
- emctl start dbconsole
Oratab : Automating Database Startup and Shutdown on Linux
orcl:/app/oracle/product/10.2.0/db_1:Y
Automating Database Startup and Shutdown on Linux
copy font.properties.th font.properties & reboot [Client]
font.properties.th > C:\Program Files\Oracle\JInitiator 1.3.1.22\lib
dialog.0=Tahoma,ANSI_CHARSET
dialog.1=Tahoma,THAI_CHARSET,NEED_CONVERTED
Use Thai Font in Report PDF
uifont.ali > C:\OraHome_2\tools\common [Server]
[ PDF:Subset ]
AngsanaUPC = "ANGSAU.TTF"
CordiaUPC = "CORDIAU.TTF"
copy *.TTF C:\OraHome_2\reports\samples\demo
Linux Command
rpm -q
rpm -ivh
ln -s libreadline.so.5.1 libreadline.so.4
How to extent memory_target > 2GB in linux
su -
mount -o remount ,size=10G /dev/shm
or
df -h ls -al /dev/shm umount tmpfs mount -t tmpfs shmfs -o size=10G /dev/shm
RLWrap for Oracle Linux 5 and 6
rlwrap-0.42-1.el5.x86_64 for Oracle Linux 5
rlwrap-0.42-1.el6.x86_64 for Oracle Linux 6
1. rpm -iUvh *.rpm
2. adding .bashrc
alias sqlplus='rlwrap -m sqlplus'
alias rman='rlwrap -m rman'
alias asmcmd='rlwrap -m asmcmd'
Demo for PARTITION OPTION
CREATE TABLE BECL (
SALE_DATE DATE,
TERMINAL VARCHAR2(10),
amount number(10,2))
TABLESPACE "USERS"
PARTITION BY RANGE ("SALE_DATE") SUBPARTITION BY LIST ("TERMINAL")
SUBPARTITION TEMPLATE (SUBPARTITION "S1" VALUES ('terminal1') TABLESPACE "USERS",
SUBPARTITION "S2" VALUES ('terminal2') TABLESPACE "USERS",
SUBPARTITION "S3" VALUES ('terminal3') TABLESPACE "USERS")
(PARTITION p20110101 VALUES LESS THAN ('06-jan-2011') TABLESPACE "USERS",
PARTITION p20110111 VALUES LESS THAN ('11-jan-2011') TABLESPACE "USERS",
PARTITION p20110116 VALUES LESS THAN ('16-jan-2011') TABLESPACE "USERS",
PARTITION p20110121 VALUES LESS THAN ('21-jan-2011') TABLESPACE "USERS",
PARTITION p20110126 VALUES LESS THAN ('26-jan-2011') TABLESPACE "USERS",
PARTITION p20110201 VALUES LESS THAN ('01-feb-2011') TABLESPACE "USERS",
PARTITION p20110206 VALUES LESS THAN ('06-feb-2011') TABLESPACE "USERS",
PARTITION p20110211 VALUES LESS THAN ('10-feb-2011') TABLESPACE "USERS",
PARTITION p20110216 VALUES LESS THAN ('16-feb-2011') TABLESPACE "USERS",
PARTITION p20110221 VALUES LESS THAN ('21-feb-2011') TABLESPACE "USERS",
PARTITION p20110226 VALUES LESS THAN ('26-feb-2011') TABLESPACE "USERS",
PARTITION p20110301 VALUES LESS THAN ('01-mar-2011') TABLESPACE "USERS");
script นี้ ทดลองใส่ข้อมูลครับ
begin
for d in 1..58 loop
for i in 1..3 loop
insert into becl values (to_date('31-dec-2010') + d,'terminal' || to_char(i),100);
end loop;
end loop;
end;
/
ทดสอบดึงข้อมูลจาก partition และ subpartion
select count(*) from becl partition (p20110101);
select count(*) from becl subpartition (p20110101_s1);
ใช้สำหรับเพิ่ม partition นะครับ
alter table becl add partition p20110306 values less than ('06-mar-2011') tablespace users;
ใช้ในการสร้าง index บนแต่ละ partition ครับ
create index amount_ind on becl(amount) local;