sql >> Databáze >  >> RDS >> Mysql

Najděte informace o cizím klíči pomocí Perl/DBI/MySQL/InnoDB

Vypadá to, že to možná ještě není podporováno ovladačem mysql. Při rychlé kontrole pomocí ladění to vypadá, že je zadán následující příkaz SQL:

SELECT NULL AS PKTABLE_CAT,
   A.REFERENCED_TABLE_SCHEMA AS PKTABLE_SCHEM,
   A.REFERENCED_TABLE_NAME AS PKTABLE_NAME,
   A.REFERENCED_COLUMN_NAME AS PKCOLUMN_NAME,
   A.TABLE_CATALOG AS FKTABLE_CAT,
   A.TABLE_SCHEMA AS FKTABLE_SCHEM,
   A.TABLE_NAME AS FKTABLE_NAME,
   A.COLUMN_NAME AS FKCOLUMN_NAME,
   A.ORDINAL_POSITION AS KEY_SEQ,
   NULL AS UPDATE_RULE,
   NULL AS DELETE_RULE,
   A.CONSTRAINT_NAME AS FK_NAME,
   NULL AS PK_NAME,
   NULL AS DEFERABILITY,
   NULL AS UNIQUE_OR_PRIMARY
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE A,
   INFORMATION_SCHEMA.TABLE_CONSTRAINTS B
WHERE A.TABLE_SCHEMA = B.TABLE_SCHEMA AND A.TABLE_NAME = B.TABLE_NAME
   AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME AND B.CONSTRAINT_TYPE IS NOT NULL
   AND A.TABLE_NAME = ? ORDER BY A.TABLE_SCHEMA, A.TABLE_NAME, A.ORDINAL_POSITION

Všimněte si, že oba sloupce UPDATE_RULE a DELETE_RULE mají hodnotu NULL.




  1. Použijte parametrizovaný dotaz s mysql.connector v Pythonu 2.7

  2. Dotaz Java MYSQL/JDBC vrací zastaralá data z připojení v mezipaměti

  3. PayPal POST data po úspěšné platbě

  4. MAMP mysql server se nespustí. Neběží žádné mysql procesy