আমার কাছে একটি ডাটাবেস রয়েছে যার ক্ষেত্রে কোনও ক্ষেত্রের মধ্যে নুল বাধা নেই এবং আমি এই সীমাবদ্ধতাটি সরাতে চাই। জটিল কারণটি হ'ল এই সীমাবদ্ধতার একটি সিস্টেম-সংজ্ঞায়িত নাম রয়েছে এবং সেই সীমাবদ্ধতার নাম উত্পাদন সার্ভার, ইন্টিগ্রেশন সার্ভার এবং বিভিন্ন বিকাশকারী ডেটাবেসগুলির মধ্যে পৃথক। আমাদের বর্তমান প্রক্রিয়াটি পরিবর্তন স্ক্রিপ্টগুলি যাচাই করা, এবং একটি স্বয়ংক্রিয় টাস্ক লক্ষ্য ডাটাবেসের বিরুদ্ধে স্ক্যালপ্লাসের মাধ্যমে যথাযথ অনুসন্ধানগুলি কার্যকর করে, তাই আমি এমন একটি সমাধান চাই যা সরাসরি স্ক্যালপ্লাসে প্রেরণ করা যায়।
আমার নিজের ডাটাবেসে এসকিউএল এগুলি হ'ল:
alter table MYTABLE drop constraint SYS_C0044566
আমি যখন all_constraints
ভিউটি জিজ্ঞাসা করি তখন আমি সীমাবদ্ধতাটি দেখতে পারি:
select * from all_constraints where table_name = 'MYTABLE'
কিন্তু আমি নিশ্চিত কিভাবে এর সাথে কাজ করা নই SEARCH_CONDITION
'র LONG
ডাটা টাইপ বা সেরা কিভাবে পরিবর্তনশীল লাগছিল আপ বাধ্যতা আমি তার নাম জানতে পরেও মুছে দিন।
সুতরাং, আমি কীভাবে একটি পরিবর্তন স্ক্রিপ্ট তৈরি করতে পারি যা এটির নামটির পরিবর্তে যা হয় তার ভিত্তিতে এই সীমাবদ্ধতাটি ফেলে দিতে পারে?
সম্পাদনা: @ অ্যালানের উত্তরটি উত্তম, তবে আমি উদ্বিগ্ন (ওরাকল দক্ষতার অভাবে আমার) এটি যে সার্বজনীনভাবে সত্য হতে পারে না যে সিস্টেম-উত্পন্ন নাম থাকতে পারে এমন কোনও প্রতিবন্ধকতা এটির সাথে মুছে ফেলার একটি উপায়ের সাথে যুক্ত থাকতে পারে নাম না জেনে বাধা। এটা কি সত্য যে যুক্তিযুক্তরূপে এই প্রতিবন্ধকতাটি বাদ দেওয়ার সময় সিস্টেম-নামক বাধার নাম জানার এড়াতে সর্বদা উপায় থাকবে?