কম্পিউটার টিউটোরিয়াল

Oracle External Tables ব্যবহার করে দক্ষ ডেটা অ্যাক্সেসের পদ্ধতি

ভূমিকা

এক্সটার্নাল টেবিল ডেটাবেসের বাইরে সংরক্ষিত ফ্ল্যাট ফাইল থেকে ডেটা গ্রহণ করে এবং Oracle® কে সেই ফাইলগুলোর ডেটা কোয়েরি করার অনুমতি দেয়।

Oracle SQL*Loader দ্বারা সাপোর্ট করা যেকোনো ফাইল ফরম্যাট পার্স করতে পারে। আপনি এক্সটার্নাল টেবিলে ডেটা ম্যানিপুলেশন ল্যাঙ্গুয়েজ (DML) ব্যবহার করতে পারবেন না, কিন্তু আপনি কোয়ারি, জয়েন, এবং সোর্ট অপারেশনের জন্য DML ব্যবহার করতে পারেন। আপনি এক্সটার্নাল টেবিলের বিপরীতে ভিউ এবং সাইনোনিমও তৈরি করতে পারেন।

এক্সটার্নাল টেবিল ফিচারের সুবিধা নেওয়ার জন্য, আপনাকে ORACLE_LOADER অ্যাক্সেস ড্রাইভার ব্যবহার করতে হবে এবং নিশ্চিত করতে হবে যে ডেটা ফাইলগুলো টেক্সট ফরম্যাটে রয়েছে। আপনাকে Structured Query Language (SQL) বোঝা উচিত যাতে আপনি একটি এক্সটার্নাল টেবিল তৈরি করতে পারেন এবং সেটির বিপরীতে কোয়ারি পারফর্ম করতে পারেন।

Oracle ডেটাবেসে একটি এক্সটার্নাল টেবিল তৈরি করুন

Oracle loader ব্যবহার করে এক্সটার্নাল টেবিল তৈরি করতে নিচের ধাপগুলো অনুসরণ করুন:

একটি ডিরেক্টরি তৈরি করুন

নিচের কোড ব্যবহার করে একটি ডিরেক্টরি তৈরি করুন যা একটি ইউজার দ্বারা প্রদত্ত কমা-সেপারেটেড ভ্যালু (CSV) বা টেক্সট ফাইলগুলোর লোকেশনে পয়েন্ট করে।

create directory vk_dir as '/opt/oracle/app/admin/je1prd/mods/151214_CHG0004529'; 

এক্সটার্নাল টেবিল তৈরি করুন

এক্সটার্নাল টেবিল তৈরি করতে নিচের SQL ব্যবহার করুন:

create table kumarv5.VK_4529_ext (
 IBMCU NCHAR(12),
 IBLITM NCHAR(25),
 IBANPL NUMBER
)
organization external (
 type oracle_loader
 default directory vk_dir
 access parameters (
 records delimited by newline
 logfile vk_dir:'VK_4529_ext.log'
 badfile vk_dir:'VK_4529_ext.bad'
 discardfile vk_dir:'VK_4529_ext.dcf'
 skip 1
 fields terminated by '~'
 missing field values are null
 reject rows with all null fields
 (
 IBMCU,
 IBLITM,
 IBANPL
 )
)
location ( 'data14.csv' )
)
reject limit unlimited; 

একটি লোকাল টেবিল তৈরি করুন

কারণ আপনি এক্সটার্নাল টেবিলে DML পারফর্ম করতে পারবেন না, তাই এক্সটার্নাল টেবিলের ভিত্তিতে একটি লোকাল টেবিল তৈরি করতে নিচের কোড ব্যবহার করুন:

--create
create table kumarv5.VK_4529_int (
 IBMCU NCHAR(12),
 IBLITM NCHAR(25),
 IBANPL NUMBER
)
tablespace proddtat; 

এক্সটার্নাল থেকে লোকাল টেবিলে ডেটা কপি করুন

এক্সটার্নাল থেকে লোকাল টেবিলে ডেটা কপি করতে নিচের কোড ব্যবহার করুন:

--insert
Insert into kumarv5.VK_4529_int select * from kumarv5.VK_4529_ext;
commit;
select count(*) from kumarv5.VK_4529_int; 

মূল প্রোডাকশন টেবিল আপডেট করুন

এক্সটার্নাল টেবিলের ভিত্তিতে লোকাল টেবিল তৈরি করার পর, আপনি লোকাল টেবিল থেকে মূল প্রোডাকশন টেবিল আপডেট করতে নিচের কোড ব্যবহার করতে পারেন:

update PRODDTA.F43090 a
set a.PCMCU=' 1AM'
WHERE (a. IBMCU, a. IBLITM, a. IBANPL) in
(select b. IBMCU, b. IBLITM, b. IBANPL
from kumarv5.VK_4529_int b ); 

এক্সটার্নাল টেবিল থেকে রেগুলার টেবিলে ডেটা লোড করুন

নিচের ছবিটি আপনাকে দেখায় কিভাবে একটি এক্সটার্নাল টেবিল থেকে একটি রেগুলার টেবিলে ডেটা লোড করতে হয়:

Oracle External Tables ব্যবহার করে দক্ষ ডেটা অ্যাক্সেসের পদ্ধতি

ছবির উৎস: https://dba.fyicenter.com/faq/oracle/Load-Data-from-External-Tables.html

উপসংহার

এক্সটার্নাল টেবিল আপনাকে এক্সটার্নাল সোর্সের ডেটা অ্যাক্সেস করতে সক্ষম করে যেন সেটি ডেটাবেসের একটি টেবিলে থাকে। যদি ইউজাররা স্প্রেডশিট বা CSV ফরম্যাটে ডেটা দেন, এবং আপনাকে এক্সেল শিটের ভিত্তিতে ডেটাবেস টেবিল আপডেট করতে হয়, তবে একটি এক্সটার্নাল টেবিল খুব উপকারী হয়।

ফিডব্যাক ট্যাব ব্যবহার করে যেকোনো মন্তব্য বা প্রশ্ন করুন। আপনি এখন চ্যাট শুরু করতে পারেন।

ডেটাবেস সম্পর্কে আরও জানুন।

  1. DBMS_REDEFINITION দিয়ে প্রোডাকশনে Oracle টেবিল পুনর্নির্দেশ করুন

  2. APP_MULTI প্যাকেজ ব্যবহার করে Oracle Forms-এ মাল্টি-সিলেকশন যোগ করুন

  3. Oracle Refreshable Clones মাস্টার করুন: 18c PDB-এর জন্য ধাপে ধাপে ডেমো

  4. ম্যাকের সাথে এক্সটার্নাল হার্ড ড্রাইভ ব্যবহার: ধাপে ধাপে সম্পূর্ণ গাইড