การใช้งาน Python ร่วมกับ Oracle Database
วันที่เขียน 21/6/2561 14:14:36     แก้ไขล่าสุดเมื่อ 1/7/2568 10:35:07
เปิดอ่าน: 12242 ครั้ง

การติดตั้งโปรแกรม Python และ Oracle instance แนะนำเนิ้อหาการใช้งาน Python ร่วมกับ Oracle Database อย่างคร่าวๆ

จะขอสรุปเนื้อหาเกี่ยวกับการใช้งาน Python  ร่วมกับ Oracle Database 12C ส่วนประกอบสำคัญในการติดตั้งและใช้มีดังนี้

  • Software  ที่ต้องมี
  1. Python 3.4 หรือ สูงกว่า สามารถดาวน์โหลดได้ที่ https://www.python.org/downloads/windows/ให้เลือกติดตั้ง  Python  bit ใช้ไฟล์  python-3.6.4-amd64.exe  สำหรับระบบปฎิบัติการวินโดวส์  64  บิต
  2. Oracle  client libraries หรือ  Oracle 12c Instant Client versions 12.1, 12.2  สำหรับระบบปฎิบัติการ Linux, Windows และ macOS สามารถดาวน์โหลด์ฟรีได้ที่ Oracle Instant Client
  3. Oracle Database 12c
  4. cx_Oracle 6 เป็น Python extension module ใช้สำหรับในการเข้าถึง  Oracle Database
  • การติดตั้ง Python 64 bit การติดตั้ง Oracle 12C Instant Client  สามารถดูได้จากเอกสารเพิ่มเติม ได้ที่นี้
  • การใช้ Python กับ Oracle Database 12c สามารถทำได้ดังตัวอย่างตัวไปนี้
  1.  
    1. ให้ทำการเชื่อมโยงติดต่อกับ Oracle ตามคำสั่งดังนี้

 



 

 cx_Oracle module  จะเป็นตัวเชื่อมต่อระหว่าง Python กับOracle Databse  โดยผ่านการใช้คำสั่ง connect() ซึ่งผู้ใช้จะต้องทำการกรอก  username  password  และ connection string   ในที่นี้ เราจะใช้ user: hr ในการเข้าสู่ระบบ และใช้ IP address local host  ของเครื่องเรา คือ 127.0.0.1  และ Database service  ชื่อ “orcl”   ส่วน คำสั่ง close() เป็นการปิดการเชื่อมต่อ

  • การสร้างคำสั่งคิวรีอย่างง่าย 

      สามารถทดลองสร้างคำสั่งและดูผลลัพธ์ ตามตัวอย่างดังนี้

เมธอด cursor() จะเป็นการเปิดเคอร์เซอร์เพื่อจัดการจับจองเนื้อที่หน่วยความจำ และการอ่านข้อมูลจากฐานข้อมูลตามคำสั่ง select ที่กำหนดไว้ เมธอด execute() เป็นการประมวลผลคำสั่งตามที่เขียนโปรแกรมไว้  และ ส่วนคำสั่ง  loop fetch จะเป็นการวนรอบดึงข้อมูลตามแถวที่เคอร์เซอร์ชี้และแสดงผลลัพธ์ข้อมูลที่ละแถวออกมา ผู้อ่านควรศึกษาเรื่อง PL/SQL เพิ่มเติม

จากภาพด้านบนจะเป็นการใช้เมธอด fetchone() เป็นการคืนค่าข้อมูล 1 แถว ในรูปแบบ tuple แต่ถ้าต้องการให้คือค่าหลายใน รูปแบบ  a list of tuples  สามารถใช้เมธอด  fetchmany() ตามตัวอย่างรูปด้านล่างนี้

ผลลัพธ์

 

ต่อมาเป็นการใช้เมธอด fetchall() เป็นการคืนค่าแถวทั้งหมด และแสดงผลลัพธ์ในรูปแบบอาเรย์ หรือ a list of tuples แต่ละ tuple จะประกอบด้วยข้อมูล 1 แถว

 แต่ถ้าต้องการให้แสดงแยกแต่ละ tuple สามารถเขียนคำสั่งได้ดังนี้

 

เนื้อหาเหมาะสำหรับผู้ที่มีพื้นฐานระบบฐานข้อมูล และ การใช้งานด้าน PL/SQL มาก่อน 

คำสำคัญ :
กลุ่มบทความ :
หมวดหมู่ :
แชร์ :
https://erp.mju.ac.th/acticleDetail.aspx?qid=806
ความคิดเห็นทั้งหมด (0)
ไม่มีข้อมูลตามเงื่อนไขที่ท่านกำหนด
รายการบทความการแลกเปลี่ยนเรียนรู้หมวดหมู่ : กลุ่มงานสายวิชาการ
การจัดการองค์ความรู้ที่ได้จากการเข้าร่วมประชุม อบรม สัมมนา » เอกสารเผยแพร่ความรู้ที่ได้จากการเข้าร่วมโครงการอบรม “โครงการอบรมหลักการเขียนตำราและหนังสือสำหรับขอตำแหน่งวิชาการ”
การเข้าร่วมอบรมโครงการ "หลักการเขียนตำราและหนังสือสำหรับขอตำแหน่งทางวิชาการ" ได้มุ่งเน้นเสริมสร้างความเข้าใจเกี่ยวกับหลักเกณฑ์และแนวปฏิบัติในการจัดทำตำราและหนังสือวิชาการที่มีคุณภาพในระดับอุดมศึกษา...
ตำแหน่งทางวิชาการ  ประกาศ ก.พ.อ.     กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน ศิรศักดิ์ ศศิวรรณพงศ์  วันที่เขียน 24/6/2568 11:16:29  แก้ไขล่าสุดเมื่อ 1/7/2568 9:31:18   เปิดอ่าน 30  ครั้ง | แสดงความคิดเห็น 0  ครั้ง
CISA » CISA สำหรับหลักสูตรปรับปรุง 2570
กิจกรรม : การประชุมชี้แจง ระบบสารสนเทศหลักสูตรเพื่อการรับรองมาตรฐานการอุดมศึกษาในหลักสูตรการศึกษา (ระยะที่ 1 การตรวจสอบหลักสูตรการศึกษา) (Curriculum Information System for Higher Education Accredit...
CISA  หลักสูตรปรัปปรุง 2570     กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน อนรรฆอร ศรีไสยเพชร  วันที่เขียน 19/6/2568 10:43:48  แก้ไขล่าสุดเมื่อ 1/7/2568 10:25:24   เปิดอ่าน 40  ครั้ง | แสดงความคิดเห็น 0  ครั้ง
การเผยแพร่ความรู้ที่ได้จากการเข้าร่วมงานประชุมวิชาการ/อบรม/สัมมนา » ความรู้ที่ได้จากการเข้าร่วมการประชุมชี้แจง ระบบสารสนเทศหลักสูตรเพื่อการรับรองมาตรฐานการอุดมศึกษาในหลักสูตรการศึกษา (ระยะที่ 1 การตรวจสอบหลักสูตรการศึกษา) (Curriculum Information System for Higher Education Accreditation: CISA) และแผนผังการเสนอหลักสูตร
ได้เข้าร่วมกิจกรรม การประชุมชี้แจง ระบบสารสนเทศหลักสูตรเพื่อการรับรองมาตรฐานการอุดมศึกษาในหลักสูตรการศึกษา (ระยะที่ 1 การตรวจสอบหลักสูตรการศึกษา) (Curriculum Information System for Higher Education...
  กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน เพชรลดา กันทาดี  วันที่เขียน 23/5/2568 17:27:10  แก้ไขล่าสุดเมื่อ 1/7/2568 2:02:03   เปิดอ่าน 193  ครั้ง | แสดงความคิดเห็น 0  ครั้ง