การใช้งาน Python ร่วมกับ Oracle Database
วันที่เขียน 21/6/2561 14:14:36     แก้ไขล่าสุดเมื่อ 11/1/2569 16:33:45
เปิดอ่าน: 12371 ครั้ง

การติดตั้งโปรแกรม 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)
ไม่มีข้อมูลตามเงื่อนไขที่ท่านกำหนด
รายการบทความการแลกเปลี่ยนเรียนรู้หมวดหมู่ : กลุ่มงานสายวิชาการ
การประเมินคาร์บอนฟุตพริ้นท์ขององค์กร (Carbon Footprint for Organization: CFO) » การประเมินคาร์บอนฟุตพริ้นท์ขององค์กร (Carbon Footprint for Organization: CFO)
ในปัจจุบัน ปัญหาการเปลี่ยนแปลงสภาพภูมิอากาศ (Climate Change) ได้กลายเป็นประเด็นสำคัญระดับโลกที่ส่งผลกระทบต่อเศรษฐกิจ สังคม และสิ่งแวดล้อม องค์กรทุกภาคส่วนจึงมีบทบาทสำคัญในการลดการปล่อยก๊าซเรือนกระจ...
  กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน ธวัชชัย เพชรธาราทิพย์  วันที่เขียน 2/1/2569 11:10:25  แก้ไขล่าสุดเมื่อ 11/1/2569 3:18:51   เปิดอ่าน 18  ครั้ง | แสดงความคิดเห็น 0  ครั้ง
ความรู้อาจารย์กับการบริการวิชาการ » ฉลากโภชนาการกับการพัฒนาบรรจุภัณฑ์อาหาร: องค์ความรู้เพื่อยกระดับผลิตภัณฑ์สินค้าเกษตรชุมชน
การอบรมออนไลน์เรื่องฉลากโภชนาการช่วยเสริมสร้างความรู้ที่จำเป็นต่อการพัฒนาผลิตภัณฑ์อาหารและบรรจุภัณฑ์สำหรับชุมชน โดยมุ่งเน้นความเข้าใจบทบาทของฉลากโภชนาการ การแสดงข้อมูลสารอาหารอย่างถูกต้องตามกฎหมาย ...
ฉลากโภชนา  ผลิตภัณฑ์สินค้าเกษตรชุมชน  พัฒนาบรรจุภัณฑ์อาหาร     กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน อัณชยารัศมิ์ เนาว์โสภา  วันที่เขียน 29/12/2568 17:09:30  แก้ไขล่าสุดเมื่อ 11/1/2569 16:25:38   เปิดอ่าน 23  ครั้ง | แสดงความคิดเห็น 0  ครั้ง
การเผยแพร่ความรู้ที่ได้จากการเข้าร่วมประชุมวิชาการ/อบรม/สัมมนา » โครงการเสริมประสิทธิภาพการเรียนการสอน ประจำปีงบประมาณ 2569 กิจกรรมที่ 2 : การประชุมเชิงปฏิบัติการ CLO-PLO Mapping และการจัดทำหลักสูตรแบบ Outcome-Based Education (OBE)
โครงการเสริมประสิทธิภาพการเรียนการสอน ประจำปีงบประมาณ 2569 กิจกรรมที่ 2 : การประชุมเชิงปฏิบัติการ CLO-PLO Mapping และการจัดทำหลักสูตรแบบ Outcome-Based Education (OBE) ในวันพฤหัสบดี ที่ 18 ธันวาคม 2...
CLOs  OBE  PLOs     กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน พิกุล ศรีดารัตน์  วันที่เขียน 29/12/2568 14:27:36  แก้ไขล่าสุดเมื่อ 9/1/2569 20:29:07   เปิดอ่าน 24  ครั้ง | แสดงความคิดเห็น 0  ครั้ง
ความรู้จากการเข้าร่วมอบรม/สัมมนา/ประชุมวิชาการ » รายงานสรุปเนื้อหาและการนำไปใช้ประโยชน์จากการเข้าร่วมโครงการเสริมประสิทธิภาพการเรียนการสอน ประจำปีงบประมาณ 2569 กิจกรรมที่ 2 การประชุมเชิงปฏิบัติการ เรื่อง การกำหนด CLO-PLO Mapping และการจัดทำหลักสูตรตามแนวทาง Outcome-Based Education (OBE)
โครงการเสริมประสิทธิภาพการเรียนการสอน ประจำปีงบประมาณ 2569 กิจกรรมที่ 2 การประชุมเชิงปฏิบัติการ เรื่อง การกำหนด CLO-PLO Mapping และการจัดทำหลักสูตรตามแนวทาง Outcome-Based Education (OBE) เป็นโครงก...
  กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน มัลลิกา ราชกิจ  วันที่เขียน 29/12/2568 13:20:03  แก้ไขล่าสุดเมื่อ 9/1/2569 20:23:57   เปิดอ่าน 29  ครั้ง | แสดงความคิดเห็น 0  ครั้ง
โครงการอบรมเชิงปฏิบัติการ : การเขียนหนังสือและตำราเพื่อประกอบการขอตำแหน่งทางวิชาการ » โครงการอบรมเชิงปฏิบัติการ : การเขียนหนังสือและตำราเพื่อประกอบการขอตำแหน่งทางวิชาการ
โครงการอบรมเชิงปฏิบัติการ : การเขียนหนังสือและตำราเพื่อประกอบการขอตำแหน่งทางวิชาการมีความเข้าใจมากขึ้น ถึงความแตกต่างของหนังสือหรือตำราซึ่งต้องใช้เป็นเอกสารเพื่อขอตำแหน่งวิชาการในระดับรองศาสตราจาร...
  กลุ่มงานตามสมรรถนะบุคลากร   กลุ่มงานสายวิชาการ
ผู้เขียน อนรรฆอร ศรีไสยเพชร  วันที่เขียน 18/12/2568 16:24:55  แก้ไขล่าสุดเมื่อ 11/1/2569 14:27:49   เปิดอ่าน 39  ครั้ง | แสดงความคิดเห็น 0  ครั้ง