सभी स्कीमा में इंस्टॉल करना
स्कीमा की सूची प्राप्त करने के लिए, show databases;
. का उपयोग करें . इसे -- use
:
use schemaA;
-- use schemaB;
-- use schemaC;
create procedure ...
स्कीमा के माध्यम से मैन्युअल रूप से पुनरावृति करें, use
. को हटाकर और बिना टिप्पणी किए जैसे-जैसे आप आगे बढ़ते हैं, यह जाँचता है कि सब कुछ ठीक हो गया है। MySQL कार्यक्षेत्र में, Ctrl+Shift+Enter आपका मित्र है।
स्कीमा के सबसेट में रूटीन इंस्टॉल करना
आम तौर पर आप संग्रहीत रूटीन को सभी . में स्थापित नहीं करना चाहते हैं सर्वर पर स्कीमा, लेकिन केवल सबसेट . में --- अक्सर स्कीमा के सेट द्वारा परिभाषित किया जाता है जिसमें पहले से ही कुछ विशिष्ट संग्रहीत दिनचर्या स्थापित होती है। फिर, जैसा कि पर चर्चा की गई है SO , आप प्रासंगिक स्कीमा के नाम प्राप्त करने के लिए इस तरह की एक क्वेरी का उपयोग कर सकते हैं:
SELECT ROUTINE_SCHEMA FROM `information_schema`.`ROUTINES` where specific_name = 'MyRoutine';
सत्यापन
दिनचर्या को परिनियोजित करने के बाद, उनके अस्तित्व को सत्यापित करने के लिए, आप इस तरह की एक क्वेरी का उपयोग कर सकते हैं:
SELECT distinct
r1.ROUTINE_SCHEMA,
case when r2.specific_name is not null then '' else '####' end as RoutineName1,
case when r3.specific_name is not null then '' else '####' end as RoutineName2,
case when r4.specific_name is not null then '' else '####' end as RoutineName3
FROM
`information_schema`.`ROUTINES` as r1
LEFT JOIN (select * from `information_schema`.`ROUTINES` where specific_name = 'RoutineName1') as r2 on r1.routine_schema = r2.routine_schema
LEFT JOIN (select * from `information_schema`.`ROUTINES` where specific_name = 'RoutineName2') as r3 on r1.routine_schema = r3.routine_schema
LEFT JOIN (select * from `information_schema`.`ROUTINES` where specific_name = 'RoutineName3') as r4 on r1.routine_schema = r4.routine_schema
where
r1.specific_name = 'FilteringRoutineName';
यह क्वेरी जाँच करेगी कि क्या RoutineName1
, RoutineName2
और RoutineName3
आपके सर्वर पर डेटाबेस स्कीमा में मौजूद है जिसमें नियमित FilteringRoutineName
. है . यदि कोई रूटीन गायब है, तो उसे ####
with से चिह्नित किया जाएगा ।
बेशक, यह केवल नियमित अस्तित्व के लिए जाँच करता है। उनके कार्यान्वयन को सत्यापित करने के लिए, आपको डेटाबेस भिन्न उपकरण (जैसे MySQL तुलना या समान) की आवश्यकता हो सकती है।