Tablo A yabancı anahtar kısıtlamasını (tip) sahiptir Tablolar Arasında yabancı anahtar kısıtlaması Sütun bilgiler bulun. Ancak, tür boş değil ve kimliği null.Tablo B (id) için
Yabancı anahtar kısıtlamalarına bakacak ve eşitlenip eşleşmediğini görmek için sütun türlerini ve null sütunları eşleştirecek olan information_schema kullanarak bir sorgu oluşturmaya çalışıyorum, ancak mantıkla ilgili sorunlar yaşıyorum.
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';
Bu sözdiziminin yanlış olduğunu biliyorum - bu, şimdiye kadar bir araya getirdiğim tek şey. Bunun bir veritabanındaki her tablo için çalıştırılabilmesini ve tablo_adı, ardından sütun_adıyla sipariş vermesini istiyorum. Column_type ve is_nullable alanlarının aynı olduğu sütunları hariç tutabilir.
'refcol.column_type <> childcol.column_type' - Bunun mümkün olmaması gerektiğini düşünüyorum. –
@Paul Spiegel uyumsuz veri tipleri ile ilgili olarak durum istendi. –