Skip to main content

ওরাকলে একটা ফাংশন থেকে কি ভাবে একটা টেবিল রিটার্ন করা যায় [ Table return in Oracle PL/SQL function]

টেবিল ক্রিয়েট করা জন্য কোড :

মনে করি আমর উপরের মত করে একটা টেবিল তৈরি করেছি । এখন আমরা এমন একটা ফাংশন বানাতে চাচ্ছি যেটা ওই টেবিল থেকে কিছু কলাম বা সবগুলি কলাম নিয়ে নতুন নতুন একটা টেবিল আমাদের কে রিটার্ন করবে কিছু শর্তের উপর নির্ভর করে । এটা করার জন্য প্রথমে ওই টেবিল থেকে আমি যে যে কলাম নিতে চাই তার সবগুই নিয়ে এটা অবজেক্ট টাইপ বানাতা হবে নিচের মত করে । আমি টাইপ টির নাম দিয়েছি obj_type .

আমরা যে অবজেক্ট টাইপ [ obj_type ] বানালাম সেই টাইপের নতুন একটা [ obj_of_table ] একই ধরনের অবজেক্ট বানাতে হবে নিচের মত করে ।

আমাদের নতুন টাইপ এর নাম দিলাম obj_of_table ফাংশনের রিটার্ন টাইপ হিসাবে কিন্তু এটাই ব্যবহার করতে হবে । এখন আমরা টেবিল রিটার্ন করার জন্য ফাংশন বানাতে পারি । এই ফাংশনের রিটার্ন টাইপ হবে obj_of_table এবং টেবিল টি আমরা new_table নামের ভারিয়েবলে জমা করে রাখব এবং সব শেষ আমরা new_table কে রিটার্ন করে দিব ।

সব কাজ শেষ :) এখন ফাংশনটি কল করার পালা । মনে করি ফাংশনের প্যারামিটার হিসাবে আমি আইডি 10 পাঠাব এবং যার আইডি এই আইডির সাথে মিলে যাবে সেই অনুসাতে টেবিল রিটার্ন করবে । ফাংশনটি কল করা জন্য নিচের মত করে লিখতে হবে ।

পুরা কোড টা দেখতে এই রকম হবে :

সব কিছু ঠিকঠাক ভাবে রান করতে পারলে কোন সমস্যা হওয়ার কথা না । তার পরও ... কিছু হলে কিন্তু আমি কোন ভাবেই দায়ি থাকব না :P এতক্ষণ সময় নষ্ট করে লিখা টি পড়ার জন্য ধন্যবাদ :) সবার পরীক্ষা ভাল হোক । হ্যাপি কোডিং :)

Comments

Popular posts from this blog

উইন্ডোজ এর Diskpart এর কিছু কমান্ড নিয়ে কাজ করা

অনেক সময় দেখা যায় যে উইন্ডোজ দেয়ার সময় আমরা আমাদের হার্ডডিস্ক কে গুই ব্যবহার করে আমাদের প্রয়োজন অনুসারে ভাগ করতে পারি না । সেই ক্ষেত্রে আমারা যদি ডিস্কপার্ট সফটওয়্যার টি ব্যাবহার করি তবে সহজেই সেটা করতে পারব ।  উইন্ডোজ দেয়ার সময় যখন Install Windows অপশন আসে তখন আমারা যদি Shift + F10 চাপি তবে উইন্ডোজ এর কমান্ড লাইন চলে আসবে । সেখানে যদি আমরা diskpart লিখলেই diskpart ওপেন হবে । এখানে আমরা ডিস্কপার্ট এর বিভিন্ন কমান্ড ব্যাবহার করতে পারব ।     এখন দেখব ডিস্কপার্ট এর বিভিন্ন কমান্ড কিভাবে ব্যাবহার করা যায় ।  আমার কয়টা হার্ড ডিস্ক আছে আছে সেটা দেখার জন্য list disk লিস্ট থেকে কোন একটা হার্ডডিস্ক কে সিলেক্ট করার জন্য  select Disk 0; ডিস্ক ০ কে সিলেক্ট করবে সিলেক্ট করা হার্ড ডিস্ক এর আন্ডারে কয়টা পার্টিশন আছে সেটা দেখার জন্য list partition primary partition ক্রিয়েট করার জন্য কমান্ড  create partition primary size = sss    এটার ড্রাইভ লেটার দেয়ার জন্য লিখতে হবে assign letter = 'D' এটা কে ntfs এ ফরমেট করার জন্য ল...

পাইথনে মডিউল এবং প্যাকেজ কিভাবে কাজ করে ?

পাইথন মডিউল এবং প্যাকেজ আজকে আমরা পাইথনের মডিউল ও প্যাকেজ সম্পর্কে জানার চেষ্টা করব । এবং এগুলো কিভাবে কাজ করে সেটা দেখব । আরও জানবো পাইথন কিভাবে তার মডিউল কে খুঁজে বের করে । মডিউল কি ? যেকোনো সিঙ্গেল পাইথন ফাইল কে বলা হয় মডিউল । আমরা যেকোনো পাইথন ফাইল যেটা .py দিয়ে শেষ হয় সেটাকে আমরা যেকোনো পাইথন স্ক্রিপ্ট থেকে import করতে পারি । অনেক বড় প্রোগ্রাম কে ছোট ছোট অংশে ভাগ করার জন্য মডিউল আমাদের কে সাহায্য করে । মনে করি আমাদের arithmatic.py নামে একটা পাইথন ফাইল আছে । ফাইলটি আপনি এখন যে ডিরেক্টরিরে আছে সেই ডিরেক্টরিতেই থাকতে হবে । এবং এটার মধ্যে নিচের জিনিসগুলো আছে । এখন আমি যদি একই ডিরেক্টরিতে থাকি তবে এই arithmatic.py ফাইল কে নিচের মত করে import করতে পারব । এবং এর ফাংশন ও ভারিয়েবল কে ব্যবহার করতে পারব । প্যাকেজ কি ? উপরে আমরা দেখলাম যে আমরা যদি কোন মডিউল কে অন্য একটা মডিউল থেকে import করতে চাই তবে মডিউল গুলো কে একই ডিরেক্টরিতে রাখতে হয় । এটা একটা সমস্যা । এই সমস্যা দূর করার জন্যই মূলত পাকেজিং সিস্টেম । এর মাধ্যমে আমরা আমাদের লেখা বিভিন্ন পাইথন মডিউল কে ভিন্ন ভি...