Get foreign keys for database table

5 vues (au cours des 30 derniers jours)
K K
K K le 30 Mai 2018
Hi,
I have some code that I use with a mysql database backend that uses the importedkeys function. I see that function is marked as "to be removed". This code will obviously break when that function is removed. What is the replacement for it? I don't see anything obvious when reading through the DB Toolbox function list
Thanks,
Kristo
  3 commentaires
Guillaume
Guillaume le 30 Mai 2018
I'm not familiar with mysql but I assume that the tables relationships are stored in a system table. So you should be able to query that table whatever its name is.
K K
K K le 6 Juin 2018
So it sounds like this is not possible going forward?

Connectez-vous pour commenter.

Réponses (1)

Piyush Kumar
Piyush Kumar le 29 Oct 2024
Hi,
To get foreign keys for a table in a MySQL database, you can query the INFORMATION_SCHEMA.KEY_COLUMN_USAGE table. Here's the SQL query you can use:
SELECT
TABLE_NAME,
COLUMN_NAME,
CONSTRAINT_NAME,
REFERENCED_TABLE_NAME,
REFERENCED_COLUMN_NAME
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
TABLE_SCHEMA = 'database_name' AND
TABLE_NAME = 'table_name' AND
REFERENCED_TABLE_NAME IS NOT NULL;
To achieve the same using a MATLAB script,
  • Establish a connection using database function.
  • Execute the above sql query and get the results using fetch function.
  • Close the connection at last using close function.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by