sql >> Database >  >> RDS >> Mysql

Zoek uit of een tafel een DELETE heeft op CASCADE

Ja. Vraag gewoon de INFORMATION_SCHEMA

SELECT * FROM information_schema.REFERENTIAL_CONSTRAINTS

Of meer specifiek

-- This query will list all constraints, their delete rule, 
-- the constraint table/column list, and the referenced table
SELECT 
  r.CONSTRAINT_NAME,
  r.DELETE_RULE, 
  r.TABLE_NAME,
  GROUP_CONCAT(k.COLUMN_NAME SEPARATOR ', ') AS `constraint columns`,
  r.REFERENCED_TABLE_NAME
FROM information_schema.REFERENTIAL_CONSTRAINTS r
  JOIN information_schema.KEY_COLUMN_USAGE k
  USING (CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME)
-- using MySQL's GROUP BY clause. In other DB's more columns would need to be
-- specified!
GROUP BY r.CONSTRAINT_CATALOG,
         r.CONSTRAINT_SCHEMA,
         r.CONSTRAINT_NAME

Lees meer over de REFERENTIAL_CONSTRAINTS tabel in de handleiding



  1. Hoe krijg je mooi opgemaakte resultaten van een Oracle-procedure die een referentiecursor retourneert?

  2. Hoe getallen in de database op twee decimalen af ​​te ronden met behulp van een MySql-query

  3. Index gebruiken, tijdelijk gebruiken, filesort gebruiken - hoe dit op te lossen?

  4. Hoe SQLite-queryresultaten op te maken in TCL-modus