Você precisa se conectar ao esquema de informações e poderá encontrar todas as informações sobre a chave primária e as chaves estrangeiras nesta tabela
SELECT * FROM information_schema.TABLE_CONSTRAINTS T;
você precisa ser um
ROOT
usuário para acessar o information_schema
. USANDO esta tabela você pode encontrar a tabela, db e se tem chave estrangeira.
Espero que isso ajude se você não quiser usar
IF EXIST
e Procedimento Armazenado. Mas tenho certeza que você pode usar IF EXIST
pode ser usado para consultas de procedimento não armazenado....