{"id":390,"date":"2009-08-11T09:23:55","date_gmt":"2009-08-11T03:23:55","guid":{"rendered":"http:\/\/techsatwork.com\/blog\/?p=390"},"modified":"2016-01-07T11:31:11","modified_gmt":"2016-01-07T05:31:11","slug":"reverse-engineer-indexes-in-db2-take-1","status":"publish","type":"post","link":"https:\/\/techsatwork.com\/?p=390","title":{"rendered":"Reverse engineer indexes in DB2 &#8211; Take 1"},"content":{"rendered":"<p>I love DB2LOOK for many reasons. Its a wonderful and easy way to reverse engineer a database. DB2LOOK can generate DDLs for specific table(s), but what if we just want indexes to be reverse engineered, thats were db2look hits the brick wall. \u00c2\u00a0I wonder why ibm didn&#8217;t provide a way just to get the indexes, so I wrote a simple sql for it. \u00c2\u00a0It does not do include or MDCs for now. But I am working on it :<\/p>\n<p><span style=\"color: #0000ff;\"><em>with temp1 (col1) as<br \/>\n(<br \/>\nselect &#8216;create &#8216;||<br \/>\ncase<br \/>\nwhen uniquerule in (&#8216;U&#8217;,&#8217;P&#8217;)<br \/>\nthen &#8216;unique index &#8216;<br \/>\nelse &#8216;index &#8216; end<br \/>\n||rtrim(indschema)||&#8217;.&#8217;||indname||&#8217; on &#8216;||rtrim(tabschema)||&#8217;.&#8217;||tabname||&#8217; (&#8216;||replace(colnames,&#8217;+&#8217;,&#8217;,&#8217;)||&#8217;)&#8217;||<br \/>\ncase<br \/>\nwhen indextype = &#8216;CLUS&#8217;<br \/>\nthen &#8216;cluster &#8216;<br \/>\nelse &#8216; &#8216; end<br \/>\n||&#8217;allow reverse scans;&#8217;<br \/>\nfrom syscat.indexes where indname like &#8216;X%&#8217;<br \/>\n)<br \/>\nselect replace(col1,'(,&#8217;,'(&#8216;) from temp1;<\/em><\/span><\/p>\n<p>I know it has few limitation, but its a start !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I love DB2LOOK for many reasons. Its a wonderful and easy way to reverse engineer a database. DB2LOOK can generate DDLs for specific table(s), but what if we just want indexes to be reverse engineered, thats were db2look hits the brick wall. \u00c2\u00a0I wonder why ibm didn&#8217;t provide a way just to get the indexes, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-container-style":"default","site-container-layout":"default","site-sidebar-layout":"default","site-transparent-header":"default","disable-article-header":"default","disable-site-header":"default","disable-site-footer":"default","disable-content-area-spacing":"default","footnotes":""},"categories":[3],"tags":[245,244,52,246],"class_list":["post-390","post","type-post","status-publish","format-standard","hentry","category-db2","tag-db2-index","tag-db2look","tag-indexes","tag-reverse-engineer"],"_links":{"self":[{"href":"https:\/\/techsatwork.com\/index.php?rest_route=\/wp\/v2\/posts\/390","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techsatwork.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techsatwork.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techsatwork.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/techsatwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=390"}],"version-history":[{"count":5,"href":"https:\/\/techsatwork.com\/index.php?rest_route=\/wp\/v2\/posts\/390\/revisions"}],"predecessor-version":[{"id":1533,"href":"https:\/\/techsatwork.com\/index.php?rest_route=\/wp\/v2\/posts\/390\/revisions\/1533"}],"wp:attachment":[{"href":"https:\/\/techsatwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=390"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techsatwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=390"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techsatwork.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=390"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}