ক্রেগ রিঙ্গার দ্বারা উত্তর সঠিক। পোস্টগ্রিস ৯.১ এবং তার পরে আরও কিছু তথ্য এখানে…
এক্সটেনশন পাওয়া যায়?
আপনি কেবল তখনই কোনও এক্সটেনশন ইনস্টল করতে পারেন যদি এটি ইতিমধ্যে আপনার পোস্টগ্রিজ ইনস্টলেশন (পোস্টগ্রিস লিংগোতে আপনার ক্লাস্টার ) তৈরি করা হয়েছে। উদাহরণস্বরূপ, আমি ইউকিড-ওএসপি এক্সটেনশনটি ম্যাক ওএস এক্স এর জন্য ইনস্টলারের অংশ হিসাবে অন্তর্ভুক্তভাবে দয়া করে এন্টারপ্রাইজবিবি.কম দ্বারা সরবরাহিত পেয়েছি । কয়েক ডজন এক্সটেনশনের যে কোনও উপলব্ধ হতে পারে।
আপনার পোস্টগ্রিস ক্লাস্টারে ইউইড-ওএসপি এক্সটেনশন পাওয়া যায় কিনা তা দেখতে , pg_available_extensions
সিস্টেম ক্যাটালগটিকে জিজ্ঞাসা করতে এই এসকিউএল চালান :
SELECT * FROM pg_available_extensions;
এক্সটেনশন ইনস্টল করুন
সেই ইউইউডি- রিলেটেড এক্সটেনশানটি ইনস্টল করতে , এই এসকিউএল-র মতো তৈরি করা এক্সটেনশন কমান্ডটি ব্যবহার করুন :
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
সাবধানতা : বিপরীতে ডকুমেন্টেশন সত্ত্বেও, প্রয়োজনীয় এক্সটেনশন নামের চারপাশে উদ্ধৃতি চিহ্নের অক্ষরগুলি পেয়েছি।
এসকিউএল স্ট্যান্ডার্ড কমিটি বা পোস্টগ্রিস টিম সেই কমান্ডের জন্য একটি বিজোড় নাম বেছে নিয়েছে। আমার মনে মনে তাদের "ইনস্টল এক্সটেনশন" বা "এক্সটেনশন ব্যবহার করুন" এর মতো কিছু বেছে নেওয়া উচিত ছিল।
ইনস্টলেশন যাচাই করুন
pg_extension
সিস্টেম ক্যাটালগের ক্যোয়ারী করতে এই এসকিউএল চালিয়ে আপনি এক্সটেনশনটি সফলভাবে ইনস্টল করে কাঙ্ক্ষিত ডাটাবেসে ইনস্টল করতে পারবেন :
SELECT * FROM pg_extension;
ডিফল্ট মান হিসাবে ইউআইডি
আরও তথ্যের জন্য, প্রশ্নটি দেখুন: পোস্টগ্র্রেসে ইউআইডি কলামের জন্য ডিফল্ট মান
ওল্ড ওয়ে
তথ্য ব্যবহার করে উপরের নতুন এক্সটেনশানগুলি বৈশিষ্ট্যটিকে যোগ Postgres 9.1 হয়। পূর্ববর্তী সংস্করণগুলিতে, আমাদের একটি .sQL ফাইলটিতে একটি স্ক্রিপ্ট খুঁজতে এবং চালাতে হয়েছিল । এক্সটেনশানগুলির বৈশিষ্ট্যটি ইনস্টলেশনটি সহজ করার জন্য যুক্ত করা হয়েছিল, এক্সটেনশনের ব্যবহারকারীর / গ্রাহকের পক্ষ থেকে কম কাজের জন্য কোনও এক্সটেনশনের স্রষ্টার জন্য আরও কিছু কাজ করা বাণিজ্য করে। আরও আলোচনার জন্য আমার ব্লগ পোস্ট দেখুন।
ইউআইডি-র প্রকারগুলি
যাইহোক, প্রশ্নের কোডটি ফাংশনটিকে কল করে uuid_generate_v4()
। এটি সংস্করণ 4 হিসাবে পরিচিত এমন একটি জেনারেট তৈরি করে যেখানে প্রায় 128 বিটগুলির মধ্যে প্রায় সমস্ত এলোমেলোভাবে উত্পন্ন হয়। সারিগুলির ছোট সেটগুলিতে সীমিত ব্যবহারের জন্য এটি সূক্ষ্ম হলেও, আপনি যদি সংঘর্ষের কোনও সম্ভাবনা কার্যত মুছে ফেলতে চান তবে ইউইউডি-র আর একটি "সংস্করণ" ব্যবহার করুন।
উদাহরণস্বরূপ, মূল সংস্করণ 1 হোস্ট কম্পিউটারের ম্যাক ঠিকানাটিকে বর্তমান তারিখ-সময় এবং একটি স্বেচ্ছাসেবী সংখ্যার সাথে একত্রিত করে , সংঘর্ষের সম্ভাবনাটি কার্যকরীভাবে শূন্য।
আরও আলোচনার জন্য, সম্পর্কিত প্রশ্নে আমার উত্তর দেখুন ।