[ https://issues.apache.org/jira/browse/TRAFODION-1726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15084452#comment-15084452 ]
ASF GitHub Bot commented on TRAFODION-1726: ------------------------------------------- Github user arvind-narain commented on a diff in the pull request: https://github.com/apache/incubator-trafodion/pull/243#discussion_r48916293 --- Diff: core/conn/jdbc_type2/native/SrvrCommon.cpp --- @@ -1634,6 +1635,53 @@ short do_ExecSMD( tableParam[0], inputParam[0], inputParam[1], inputParam[2], inputParam[3]); break; + case SQL_API_SQLSTATISTICS: + if ((!checkIfWildCard(catalogNm, catalogNmNoEsc) || !checkIfWildCard(schemaNm, schemaNmNoEsc) + || !checkIfWildCard(tableNm, tableNmNoEsc)) && !metadataId) + { + executeException->exception_nr = odbc_SQLSvc_GetSQLCatalogs_ParamError_exn_; + executeException->u.ParamError.ParamDesc = SQLSVC_EXCEPTION_WILDCARD_NOT_SUPPORTED; + FUNCTION_RETURN_NUMERIC(EXECUTE_EXCEPTION,("EXECUTE_EXCEPTION")); + } + + if (strcmp(catalogNm,"") == 0) + strcpy(tableName1,SEABASE_MD_CATALOG); + else + strcpy(tableName1, catalogNm); + tableParam[0] = tableName1; + convertWildcard(metadataId, TRUE, schemaNm, expSchemaNm); + convertWildcardNoEsc(metadataId, TRUE, schemaNm, schemaNmNoEsc); + convertWildcard(metadataId, TRUE, tableNm, expTableNm); + convertWildcardNoEsc(metadataId, TRUE, tableNm, tableNmNoEsc); + if( inputParam[5] != NULL ) + { + sprintf(cunique, " and index.IS_UNIQUE=1"); + } + inputParam[0] = schemaNmNoEsc; + inputParam[1] = expSchemaNm; + inputParam[2] = tableNmNoEsc; + inputParam[3] = expTableNm; + inputParam[4] = NULL; + snprintf((char *)sqlString->dataValue._buffer, totalSize, + "select " + "obj.CATALOG_NAME TABLE_CAT, obj.SCHEMA_NAME TABLE_SCHEM, obj.OBJECT_NAME TABLE_NAME," + "cast((case when index.IS_UNIQUE=0 then 1 else 0 end) as smallint) NON_UNIQUE, " + "cast(NULL as varchar(32)) INDEX_QUALIFIER, idxobj.OBJECT_NAME INDEX_NAME, " + "cast(-2 as smallint) TYPE, cols.COLUMN_NUMBER ORDINAL_POSITION, " + "substr(cols.COLUMN_NAME,0,CHAR_LENGTH(cols.COLUMN_NAME)) COLUMN_NAME, " + "cast((case when keys.ORDERING=0 then 'A' else 'D' end) as varchar(4)) ASC_OR_DESC," + "cast(-2 as int) CARDINALITY, cast(-2 as int) PAGES, cast(NULL as varchar(10)) FILTER_CONDITION " + "from TRAFODION.\"_MD_\".OBJECTS obj " + "left join TRAFODION.\"_MD_\".INDEXES index on obj.object_uid=index.BASE_TABLE_UID " + "left join TRAFODION.\"_MD_\".OBJECTS idxobj on index.index_uid=idxobj.object_UID " + "left join TRAFODION.\"_MD_\".COLUMNS cols on cols.column_name<>'SYSKEY' and idxobj.object_uid=cols.object_uid " + "left join TRAFODION.\"_MD_\".KEYS keys on cols.object_uid=keys.object_uid and cols.COLUMN_NAME=keys.COLUMN_NAME and keys.column_name<>'SYSKEY' " + "where 1=1 %s" + " and (obj.SCHEMA_NAME = '%s' or trim(obj.SCHEMA_NAME) LIKE '%s' ESCAPE '\\')" + " and (obj.OBJECT_NAME = '%s' or trim(obj.OBJECT_NAME) LIKE '%s' ESCAPE '\\')" + " FOR READ UNCOMMITTED ACCESS order by INDEX_NAME, ORDINAL_POSITION;", --- End diff -- should this be ordered by NON_UNIQUE, TYPE, INDEX_NAME, and ORDINAL_POSITION ? > DatabaseMetaData.getIndexInfo does not work > ------------------------------------------- > > Key: TRAFODION-1726 > URL: https://issues.apache.org/jira/browse/TRAFODION-1726 > Project: Apache Trafodion > Issue Type: Bug > Components: client-jdbc-t2 > Reporter: Kevin Xu > Assignee: Kevin Xu > > DatabaseMetaData.getIndexInfo("TRAFODION", "SEABASE", "OSD28DL_Z1", false, > true) -- This message was sent by Atlassian JIRA (v6.3.4#6332)