<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>question Re: Any way to retrieve the constraints of a Hive table in Support Questions</title>
    <link>https://community.cloudera.com/t5/Support-Questions/Any-way-to-retrieve-the-constraints-of-a-Hive-table/m-p/209107#M171064</link>
    <description>&lt;P&gt;Yes. It is possible to retrieve constraints of a Hive table. You need to query the database where Hive stores it's metastore...We are using MySQL database as Hive metastore and below is the query:&lt;/P&gt;&lt;P&gt;SELECT d.NAME as SCHEMA_NAME,t.TBL_NAME as TABLE_NAME, kc.CONSTRAINT_NAME, kc.CONSTRAINT_TYPE, c.COLUMN_NAME, c.TYPE_NAME, '' as REFERENCE_SCHEMA_NAME, '' as REFERENCE_TABLE_NAME, '' as REFERENCE_COL_NAME &lt;/P&gt;&lt;P&gt;FROM DBS d, TBLS t, SDS s, COLUMNS_V2 c, CDS cds, KEY_CONSTRAINTS kc &lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;WHERE d.DB_ID =t.DB_ID AND  t.SD_ID = s.SD_ID AND s.cd_id = c.cd_id 
AND cds.CD_ID = c.CD_ID AND kc.PARENT_TBL_ID = t.TBL_ID AND kc.PARENT_CD_ID=c.CD_ID AND c.INTEGER_IDX=kc.PARENT_INTEGER_IDX AND CONSTRAINT_TYPE='0'
AND t.tbl_name='pk' AND d.NAME='vsatyp_schema' &lt;/P&gt;&lt;P&gt;
UNION ALL &lt;/P&gt;&lt;P&gt;SELECT d.NAME as SCHEMA_NAME,t.TBL_NAME as TABLE_NAME, kc.CONSTRAINT_NAME, kc.CONSTRAINT_TYPE,  c.COLUMN_NAME, c.TYPE_NAME, p_d.NAME as 
REFERENCE_SCHEMA_NAME, p_t.TBL_NAME as REFERENCE_TABLE_NAME, p_c.COLUMN_NAME as REFERENCE_COL_NAME &lt;/P&gt;&lt;P&gt;
FROM hive_metastore.DBS d, hive_metastore.TBLS t, hive_metastore.SDS s, hive_metastore.COLUMNS_V2 c, hive_metastore.CDS cds, 
hive_metastore.KEY_CONSTRAINTS kc,
hive_metastore.DBS p_d, hive_metastore.TBLS p_t, hive_metastore.SDS p_s, hive_metastore.COLUMNS_V2 p_c, hive_metastore.CDS p_cds &lt;/P&gt;&lt;P&gt;WHERE d.DB_ID =t.DB_ID AND  t.SD_ID = s.SD_ID AND s.cd_id = c.cd_id AND cds.CD_ID = c.CD_ID AND kc.CHILD_TBL_ID = t.TBL_ID 
AND kc.CHILD_CD_ID=c.CD_ID AND c.INTEGER_IDX=kc.CHILD_INTEGER_IDX 
AND p_d.DB_ID =p_t.DB_ID AND  p_t.SD_ID = p_s.SD_ID AND p_s.cd_id = p_c.cd_id AND p_cds.CD_ID = p_c.CD_ID AND kc.PARENT_TBL_ID = p_t.TBL_ID 
AND kc.PARENT_CD_ID=p_c.CD_ID AND p_c.INTEGER_IDX=kc.PARENT_INTEGER_IDX AND CONSTRAINT_TYPE='1' 
AND d.NAME in ('vsatyp_schema') and  t.tbl_name  = 'fk' order by SCHEMA_NAME, TABLE_NAME, CONSTRAINT_TYPE&lt;/P&gt;&lt;P&gt;Hope this helps...&lt;/P&gt;</description>
    <pubDate>Fri, 02 Feb 2018 16:43:17 GMT</pubDate>
    <dc:creator>vidyadharms</dc:creator>
    <dc:date>2018-02-02T16:43:17Z</dc:date>
  </channel>
</rss>

