तालिका ए के बीच विदेशी कुंजी बाधा कॉलम जानकारी खोजें तालिका ए में तालिका बी (आईडी) के लिए एक विदेशी कुंजी बाधा (प्रकार) है। हालांकि, प्रकार शून्य नहीं है और आईडी शून्य है।टेबल्स
मैं info_schema का उपयोग करके एक क्वेरी बनाने की कोशिश कर रहा हूं जो विदेशी कुंजी बाधाओं को देखेगा और कॉलम प्रकारों और शून्य कॉलम से मेल खाता है ताकि वे यह सिंक कर सकें कि वे सिंक करते हैं, हालांकि मुझे तर्क के साथ समस्याएं आ रही हैं।
select kcu.table_name, kcu.column_name, c.column_type, c.is_nullable,kcu.referenced_table_name, kcu.referenced_column_name,c.column_type, c.is_nullable
from key_column_usage kcu
inner join columns c on c.table_schema=kcu.table_schema and c.column_name=kcu.column_name and c.table_name=kcu.table_name
where kcu.referenced_table_name='Table_B' and kcu.table_name='Table_A';
मुझे पता है कि यह वाक्यविन्यास गलत है - यह सब कुछ मैं अब तक एक साथ रखने में सक्षम हूं। मैं इसे डेटाबेस में प्रत्येक तालिका के लिए निष्पादित करने में सक्षम होना चाहता हूं और इसे table_name, फिर column_name द्वारा आदेश दिया गया है। यह कॉलम को बहिष्कृत कर सकता है जहां कॉलम_ टाइप और is_nullable फ़ील्ड समान हैं।
'refcol.column_type <> childcol.column_type' - मुझे लगता है कि यह संभव नहीं होना चाहिए। –
@ पॉल स्पिगल ने बेमिसाल डेटा प्रकारों के बारे में शर्त का अनुरोध किया था। –