เรียนรู้วิธีใช้ node ฐานข้อมูล Oracle ใน n8n ปฏิบัติตามเอกสารทางเทคนิคเพื่อรวม node Oracle Database เข้ากับ workflow ของคุณ
ใช้ node Oracle Database เพื่อทำงานใน Oracle Database โดยอัตโนมัติ และผสานรวม Oracle Database เข้ากับแอปพลิเคชันอื่นๆ n8n มีการรองรับในตัวสำหรับคุณสมบัติ Oracle Database ที่หลากหลาย ซึ่งรวมถึงการดำเนินการคำสั่ง SQL การดึงข้อมูล การแทรก การอัปเดต หรือการลบข้อมูลจาก Oracle Database node นี้ใช้ ไดรเวอร์ node oracledb ภายใน
ในหน้านี้ คุณจะพบรายการการดำเนินการที่ node Oracle Database รองรับ และลิงก์ไปยังแหล่งข้อมูลเพิ่มเติม
อ้างถึง Oracle Database credentials สำหรับคำแนะนำในการตั้งค่าการรับรองความถูกต้อง
ต้องใช้ฐานข้อมูลออราเคิล 19c หรือใหม่กว่า (19c or later) . สำหรับคุณสมบัติ Oracle Database ขั้นสูง เช่น Transparent Application Continuity (TAC) และ Sharding ก็จำเป็นต้องมี Oracle Client Libraries เช่นกัน 19c หรือใหม่กว่า (19c or later).
node นี้สามารถใช้เป็นเครื่องมือ AI ได้ (This node can be used as an AI tool)
node นี้สามารถใช้เพื่อเพิ่มขีดความสามารถของ AI Agent เมื่อใช้ในลักษณะนี้ parameter จำนวนมากสามารถตั้งค่าได้โดยอัตโนมัติ หรือด้วยข้อมูลที่ควบคุมโดย AI ดูข้อมูลเพิ่มเติมได้ใน เอกสารประกอบ parameter เครื่องมือ AI .
การดำเนินงาน
- Delete : ลบทั้งตารางหรือแถวในตาราง
- Execute SQL : ดำเนินการคำสั่ง SQL
- Insert : แทรกแถวในตาราง
- Insert or Update : แทรกหรืออัปเดตแถวในตาราง
- Select : เลือกแถวจากตาราง
- Update : อัปเดตแถวในตาราง
Delete
ใช้การดำเนินการนี้เพื่อลบทั้งตารางหรือแถวในตาราง
ป้อน parameter เหล่านี้:
- Credential to connect with : สร้างหรือเลือกที่มีอยู่ Oracle Database credentials.
- Operation : เลือก Delete.
- Schema : เลือกสคีมาที่มีตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกสคีมาจากรายการดรอปดาวน์หรือ By Name เพื่อป้อนชื่อสคีมา
- Table : เลือกตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกตารางจากรายการดรอปดาวน์ หรือเลือก By Name เพื่อใส่ชื่อตาราง
- Command : การดำเนินการลบที่จะดำเนินการ:
- Truncate : ลบข้อมูลของตารางแต่คงโครงสร้างของตารางไว้
- Delete : ลบแถวที่ตรงกับเงื่อนไข "เลือกแถว" หากคุณไม่เลือกสิ่งใดเลย Oracle Database จะลบแถวทั้งหมด
- Select Rows : กำหนด Column, Operator และ Value เพื่อจับคู่แถว สามารถส่งค่าเป็น JSON ได้โดยใช้ expression หรือ string
- Combine Conditions : วิธีรวมเงื่อนไขใน "เลือกแถว" ที่ AND กำหนดให้เงื่อนไขทั้งหมดเป็นจริงในขณะที่ OR ต้องมีอย่างน้อยหนึ่งเงื่อนไขที่จะเป็นจริง
- Drop : ลบข้อมูลและโครงสร้างของตารางอย่างถาวร
ลบตัวเลือก (Delete options)
- Auto Commit : เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็นจริง ธุรกรรมในการเชื่อมต่อปัจจุบันจะกระทำโดยอัตโนมัติเมื่อสิ้นสุดการดำเนินการคำสั่ง
- Statement Batching : วิธีการส่งคำสั่งไปยังฐานข้อมูล:
- Single Statement : คำสั่งเดียวสำหรับรายการขาเข้าทั้งหมด
- Independently : ดำเนินการหนึ่งคำสั่งต่อรายการที่เข้ามาของการดำเนินการ
- Transaction : ดำเนินการใบแจ้งยอดทั้งหมดในธุรกรรม หากเกิดความล้มเหลว Oracle Database จะย้อนกลับการเปลี่ยนแปลงทั้งหมด
Execute SQL
ใช้การดำเนินการนี้เพื่อดำเนินการคำสั่ง SQL
ป้อน parameter เหล่านี้:
- Credential to connect with : สร้างหรือเลือกที่มีอยู่ Oracle Database credentials.
- Operation : ดำเนินการ SQL Execute SQL.
- Statement : คำสั่ง SQL ที่จะรัน คุณสามารถใช้ n8n การแสดงออก และ parameter ตำแหน่งเช่น
:1,:2หรือ parameter ที่มีชื่อเช่น:name,:idที่จะใช้กับ ใช้ parameter การผูก . เมื่อต้องการรันขั้นตอน PL/SQL เป็นต้นdemoคุณสามารถใช้:
BEGIN
demo;
END;
ดำเนินการตัวเลือกคำสั่ง (Execute Statement options)
- Auto Commit : เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็นจริง ธุรกรรมในการเชื่อมต่อปัจจุบันจะกระทำโดยอัตโนมัติเมื่อสิ้นสุดการดำเนินการคำสั่ง
- Bind Variable Placeholder Values : ป้อนค่าสำหรับ parameter การเชื่อมโยงที่ใช้ในคำสั่ง ใช้ parameter การผูก .
- Output Numbers As String : ระบุว่าควรดึงตัวเลขเป็น string หรือไม่
- Fetch Array Size : คุณสมบัตินี้เป็นตัวเลขที่กำหนดขนาดของบัฟเฟอร์ภายในที่ใช้สำหรับการดึงแถวแบบสอบถามจากฐานข้อมูล Oracle การเปลี่ยนแปลงอาจส่งผลต่อประสิทธิภาพของคิวรี แต่ไม่ส่งผลต่อจำนวนแถวที่ส่งคืนไปยังแอปพลิเคชัน
- Number of Rows to Prefetch : คุณสมบัตินี้เป็นตัวเลือกการปรับแต่งแบบสอบถามเพื่อกำหนดจำนวนแถวเพิ่มเติมที่ไดรเวอร์ Oracle พื้นฐานดึงข้อมูลในระหว่างขั้นตอนการดำเนินการคำสั่งเริ่มต้นภายในของแบบสอบถาม
Insert
ใช้การดำเนินการนี้เพื่อแทรกแถวในตาราง
ป้อน parameter เหล่านี้:
- Credential to connect with : สร้างหรือเลือกที่มีอยู่ Oracle Database credentials.
- Operation : เลือก Insert.
- Schema : เลือกสคีมาที่มีตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกสคีมาจากรายการดรอปดาวน์หรือ By Name เพื่อป้อนชื่อสคีมา
- Table : เลือกตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกตารางจากรายการดรอปดาวน์ หรือเลือก By Name เพื่อใส่ชื่อตาราง
- Mapping Column Mode : วิธีจับคู่ชื่อคอลัมน์กับข้อมูลขาเข้า:
- Map Each Column Manually : เลือกค่าที่จะใช้สำหรับแต่ละคอลัมน์ ใช้ expression n8n สำหรับค่าการผูก .
- Map Automatically : แมปข้อมูลขาเข้ากับชื่อคอลัมน์ที่ตรงกันใน Oracle Database โดยอัตโนมัติ ชื่อฟิลด์ข้อมูลที่เข้ามาต้องตรงกับชื่อคอลัมน์ใน Oracle Database เพื่อให้สามารถใช้งานได้ หากจำเป็น ให้พิจารณาใช้ Edit Fields (Set) ก่อน node นี้เพื่อปรับรูปแบบตามต้องการ
แทรกตัวเลือก (Insert options)
- Auto Commit : เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็นจริง ธุรกรรมในการเชื่อมต่อปัจจุบันจะกระทำโดยอัตโนมัติเมื่อสิ้นสุดการดำเนินการคำสั่ง
- Output Columns : เลือกคอลัมน์ที่จะส่งออก คุณสามารถเลือกจากรายการคอลัมน์ที่มีอยู่หรือระบุ ID โดยใช้ การแสดงออก .
- Statement Batching : วิธีการส่งคำสั่งไปยังฐานข้อมูล:
- Single Statement : คำสั่งเดียวสำหรับรายการขาเข้าทั้งหมด
- Independently : ดำเนินการหนึ่งคำสั่งต่อรายการที่เข้ามาของการดำเนินการ
- Transaction : ดำเนินการใบแจ้งยอดทั้งหมดในธุรกรรม หากเกิดความล้มเหลว Oracle Database จะย้อนกลับการเปลี่ยนแปลงทั้งหมด
Insert or Update
ใช้การดำเนินการนี้เพื่อแทรกหรืออัปเดตแถวในตาราง
ป้อน parameter เหล่านี้:
- Credential to connect with : สร้างหรือเลือกที่มีอยู่ Oracle Database credentials.
- Operation : เลือก Insert or Update.
- Schema : เลือกสคีมาที่มีตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกสคีมาจากรายการดรอปดาวน์หรือ By Name เพื่อป้อนชื่อสคีมา
- Table : เลือกตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกตารางจากรายการดรอปดาวน์ หรือเลือก By Name เพื่อใส่ชื่อตาราง
- Mapping Column Mode : วิธีจับคู่ชื่อคอลัมน์กับข้อมูลขาเข้า:
- Map Each Column Manually : เลือกค่าที่จะใช้สำหรับแต่ละคอลัมน์ ใช้ expression n8n สำหรับค่าการผูก .
- Map Automatically : แมปข้อมูลขาเข้ากับชื่อคอลัมน์ที่ตรงกันใน Oracle Database โดยอัตโนมัติ ชื่อฟิลด์ข้อมูลที่เข้ามาต้องตรงกับชื่อคอลัมน์ใน Oracle Database เพื่อให้สามารถใช้งานได้ หากจำเป็น ให้พิจารณาใช้ Edit Fields (Set) ก่อน node นี้เพื่อปรับรูปแบบตามต้องการ
แทรกหรืออัปเดตตัวเลือก (Insert or Update options)
- Auto Commit : เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็นจริง ธุรกรรมในการเชื่อมต่อปัจจุบันจะกระทำโดยอัตโนมัติเมื่อสิ้นสุดการดำเนินการคำสั่ง
- Output Columns : เลือกคอลัมน์ที่จะส่งออก คุณสามารถเลือกจากรายการคอลัมน์ที่มีอยู่หรือระบุ ID โดยใช้ การแสดงออก .
- Statement Batching : วิธีการส่งคำสั่งไปยังฐานข้อมูล:
- Single Statement : คำสั่งเดียวสำหรับรายการขาเข้าทั้งหมด
- Independently : ดำเนินการหนึ่งคำสั่งต่อรายการที่เข้ามาของการดำเนินการ
- Transaction : ดำเนินการใบแจ้งยอดทั้งหมดในธุรกรรม หากเกิดความล้มเหลว Oracle Database จะย้อนกลับการเปลี่ยนแปลงทั้งหมด
Select
ใช้การดำเนินการนี้เพื่อเลือกแถวในตาราง
ป้อน parameter เหล่านี้:
- Credential to connect with : สร้างหรือเลือกที่มีอยู่ Oracle Database credentials.
- Operation : เลือก Select.
- Schema : เลือกสคีมาที่มีตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกสคีมาจากรายการดรอปดาวน์หรือ By Name เพื่อป้อนชื่อสคีมา
- Table : เลือกตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกตารางจากรายการดรอปดาวน์ หรือเลือก By Name เพื่อใส่ชื่อตาราง
- Return All : ว่าจะส่งคืนผลลัพธ์ทั้งหมดหรือไม่เกินขีดจำกัดที่กำหนดเท่านั้น
- Limit : จำนวนสินค้าสูงสุดที่จะคืนเมื่อ Return All ถูกปิดใช้งาน
- Select Rows : กำหนดเงื่อนไขในการเลือกแถว กำหนด Column, Operator และ Value (เช่น
json) เพื่อจับคู่แถว ที่ Value อาจแตกต่างกันไปตามประเภท — เช่น ด้วยโหมดคงที่:- string: "สวัสดี" สวัสดีไม่มีเครื่องหมายคำพูด "สวัสดีกับช่องว่าง"
- หมายเลข: 12
- JSON: { "คีย์": "วาล" }
หากคุณไม่เลือกอะไรเลย Oracle Database จะเลือกแถวทั้งหมด
- Combine Conditions : วิธีรวมเงื่อนไขเข้า Select Rows . ที่ AND กำหนดให้เงื่อนไขทั้งหมดเป็นจริงในขณะที่ OR ต้องมีอย่างน้อยหนึ่งเงื่อนไขที่จะเป็นจริง
- Sort : เลือกวิธีจัดเรียงแถวที่เลือก เลือกก Column จากรายการหรือตาม ID และการเรียงลำดับ Direction.
เลือกตัวเลือก (Select options)
- Auto Commit : เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็นจริง ธุรกรรมในการเชื่อมต่อปัจจุบันจะกระทำโดยอัตโนมัติเมื่อสิ้นสุดการดำเนินการคำสั่ง
- Output Numbers As String : ระบุว่าควรดึงตัวเลขเป็น string หรือไม่
- Fetch Array Size : คุณสมบัตินี้เป็นตัวเลขที่กำหนดขนาดของบัฟเฟอร์ภายในที่ใช้สำหรับการดึงแถวแบบสอบถามจากฐานข้อมูล Oracle การเปลี่ยนแปลงอาจส่งผลต่อประสิทธิภาพของคิวรี แต่ไม่ส่งผลต่อจำนวนแถวที่ส่งคืนไปยังแอปพลิเคชัน
- Number of Rows to Prefetch : คุณสมบัตินี้เป็นตัวเลือกการปรับแต่งแบบสอบถามเพื่อกำหนดจำนวนแถวเพิ่มเติมที่ไดรเวอร์ Oracle พื้นฐานดึงข้อมูลในระหว่างขั้นตอนการดำเนินการคำสั่งเริ่มต้นภายในของแบบสอบถาม
Update
ใช้การดำเนินการนี้เพื่ออัปเดตแถวในตาราง
ป้อน parameter เหล่านี้:
- Credential to connect with : สร้างหรือเลือกที่มีอยู่ Oracle Database credentials.
- Operation : เลือก Update.
- Schema : เลือกสคีมาที่มีตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกสคีมาจากรายการดรอปดาวน์หรือ By Name เพื่อป้อนชื่อสคีมา
- Table : เลือกตารางที่คุณต้องการทำงาน เลือก From list เพื่อเลือกตารางจากรายการดรอปดาวน์ หรือเลือก By Name เพื่อใส่ชื่อตาราง
- Mapping Column Mode : วิธีจับคู่ชื่อคอลัมน์กับข้อมูลขาเข้า:
- Map Each Column Manually : เลือกค่าที่จะใช้สำหรับแต่ละคอลัมน์ ใช้ expression n8n สำหรับค่าการผูก .
- Map Automatically : แมปข้อมูลขาเข้ากับชื่อคอลัมน์ที่ตรงกันใน Oracle Database โดยอัตโนมัติ ชื่อฟิลด์ข้อมูลที่เข้ามาต้องตรงกับชื่อคอลัมน์ใน Oracle Database เพื่อให้สามารถใช้งานได้ หากจำเป็น ให้พิจารณาใช้ Edit Fields (Set) ก่อน node นี้เพื่อปรับรูปแบบตามต้องการ
อัปเดตตัวเลือก (Update options)
- Auto Commit : เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็นจริง ธุรกรรมในการเชื่อมต่อปัจจุบันจะกระทำโดยอัตโนมัติเมื่อสิ้นสุดการดำเนินการคำสั่ง
- Output Columns : เลือกคอลัมน์ที่จะส่งออก คุณสามารถเลือกจากรายการคอลัมน์ที่มีอยู่หรือระบุ ID โดยใช้ การแสดงออก .
- Statement Batching : วิธีการส่งคำสั่งไปยังฐานข้อมูล:
- Single Statement : คำสั่งเดียวสำหรับรายการขาเข้าทั้งหมด
- Independently : ดำเนินการหนึ่งคำสั่งต่อรายการที่เข้ามาของการดำเนินการ
- Transaction : ดำเนินการใบแจ้งยอดทั้งหมดในธุรกรรม หากเกิดความล้มเหลว Oracle Database จะย้อนกลับการเปลี่ยนแปลงทั้งหมด
ทรัพยากรที่เกี่ยวข้อง
อ้างถึง การอ้างอิงภาษา SQL สำหรับข้อมูลเพิ่มเติมเกี่ยวกับบริการ
อ้างถึง เอกสารประกอบ node-oracledb สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไดรเวอร์ node-oracledb
ใช้ parameter การผูก
เมื่อสร้างคำสั่งเพื่อรันบนอินสแตนซ์ฐานข้อมูล Oracle คุณสามารถใช้ Bind Variable Placeholder Values สนามใน Options ส่วนในการโหลดข้อมูลลงในคำสั่ง n8n ทำความสะอาดข้อมูลใน parameter คำสั่ง ซึ่งป้องกันการแทรก SQL
ตัวอย่างเช่น คุณต้องการค้นหาผลไม้ที่เฉพาะเจาะจงตามสีของมัน รับข้อมูล input ต่อไปนี้:
[
{
"FRUIT_ID": 1,
"FRUIT_NAME": "Apple",
"COLOR": "Red"
},
{
"FRUIT_ID": 2,
"FRUIT_NAME": "Banana",
"COLOR": "Yellow"
}
]
คุณสามารถเขียนคำสั่งเช่น:
SELECT * FROM FRUITS WHERE COLOR = :col
แล้วเข้า. Bind Variable Placeholder Values ให้ระบุค่าฟิลด์ที่จะใช้ คุณสามารถระบุค่าคงที่หรือ expression ได้ สำหรับตัวอย่างนี้ ใช้ expression เพื่อให้ node สามารถดึงสีจากแต่ละรายการ input ตามลำดับ:
// fruits is an example table name
fruits, {{ $json.color }}
ใช้ expression n8n สำหรับค่าการผูก
สำหรับ Values to Send คุณสามารถระบุ input ได้โดยใช้ n8n Expressions ด้านล่างนี้คือตัวอย่างสำหรับประเภทข้อมูลต่างๆ คุณสามารถป้อนค่าคงที่หรือฟิลด์อ้างอิงจากรายการก่อนหน้าได้ ( $json):
JSON
- ค่าคงที่:
{{ { k1: "v1", k2: "v2" } }} - จากรายการก่อนหน้า:
{{ $json.COL_JSON }}
VECTOR
- ค่าคงที่:
{{ [1, 2, 3, 4.5] }} - จากรายการก่อนหน้า:
{{ $json.COL_VECTOR }}
BLOB
- ค่าคงที่:
{{ [94, 87, 34] }}หรือ{{ ' BLOB data string' }} - จากรายการก่อนหน้า:
{{ $json.COL_BLOB }}
RAW
- ค่าคงที่:
{{ [94, 87, 34] }} - จากรายการก่อนหน้า:
{{ $json.COL_RAW }}
BOOLEAN
- ค่าคงที่:
{{ true }} - จากรายการก่อนหน้า:
{{ $json.COL_BOOLEAN }}
NUMBER
- ค่าคงที่:
1234 - จากรายการก่อนหน้า:
{{ $json.COL_NUMBER }}
วาร์ชาร์
- ค่าคงที่:
' Hello World ' - จากรายการก่อนหน้า:
{{ $json.COL_CHAR }}
ตัวอย่างเหล่านี้ถือว่าคีย์ JSON (เช่น COL_JSON, COL_VECTOR ) แมปโดยตรงกับประเภทคอลัมน์ SQL ที่เกี่ยวข้อง

