মাইএসকিউএল ডাটাবেসে সমস্ত ট্রিগার তালিকাভুক্ত করার আদেশ কী?
উত্তর:
সমস্ত ট্রিগার তালিকার জন্য আদেশটি হ'ল:
show triggers;
অথবা আপনি INFORMATION_SCHEMA
সরাসরি টেবিলটি অ্যাক্সেস করতে পারেন :
select trigger_schema, trigger_name, action_statement
from information_schema.triggers
TRIGGERS
টেবিল সম্পর্কে আরও তথ্য এখানে ।SHOW TRIGGERS
প্রয়োজন যে TRIGGER
সেই ডাটাবেস এবং সারণীর জন্য অধিকার আছে । আপনি যদি একটি অনিবদ্ধ ব্যবহারকারীর সাথে মাইএসকিউএল এ লগইন করেন তবে এক্সিকিউট করা SHOW TRIGGERS
ত্রুটি ছুঁড়ে ফেলার পরিবর্তে কিছুই ফিরিয়ে দেয় না। আপনি সুবিধাগুলির প্রয়োজনীয়তা সম্পর্কে সচেতন না হলে এটি বিভ্রান্তিকর হতে পারে।
আমি আশা করি নিম্নলিখিত কোডগুলি আপনাকে আরও তথ্য দেবে।
select * from information_schema.triggers where
information_schema.triggers.trigger_schema like '%your_db_name%'
এটি আপনাকে মাইএসকিউএল সংস্করণে মোট 22 টি কলাম দেয় : 5.5.27 এবং উপরে
TRIGGER_CATALOG
TRIGGER_SCHEMA
TRIGGER_NAME
EVENT_MANIPULATION
EVENT_OBJECT_CATALOG
EVENT_OBJECT_SCHEMA
EVENT_OBJECT_TABLE
ACTION_ORDER
ACTION_CONDITION
ACTION_STATEMENT
ACTION_ORIENTATION
ACTION_TIMING
ACTION_REFERENCE_OLD_TABLE
ACTION_REFERENCE_NEW_TABLE
ACTION_REFERENCE_OLD_ROW
ACTION_REFERENCE_NEW_ROW
CREATED
SQL_MODE
DEFINER
CHARACTER_SET_CLIENT
COLLATION_CONNECTION
DATABASE_COLLATION
LIKE
স্কিমা নিয়ে কাজ করার সময় ব্যবহার করা এড়াতে চাই । আমি এমন পরিবেশে কাজ করেছি যেখানে এটি করা ত্রুটিযুক্ত প্রবণতা হবে যেখানে ক্লায়েন্টের "কোম্পানী" নামক একটি ডাটাবেস এবং অন্যটি "Company_project" নামে পরিচিত ছিল। আমি স্পষ্টতা এবং INFORMATION_SCHEMA এবং সেখানকার কলামগুলিতে KEYWORDS কে মূলধন করার পরামর্শ দিচ্ছি যাতে এটি স্পষ্ট হয় যে আপনি একটি নিয়মিত ডিবি নিয়ে কাজ করছেন না।