MicroStrategy: Warehouse Catalog Read Settings


Does anyone know the how to write the SQL statements appropriate for third party applications, like MicroStrategy, in order to retrieve tables and columns for those selected tables through an HTTP connection?

Please help if you can. Thank you!



There is no current mechanism to write sql queries to MapD to get table and schema metadata.

Your choices are JDBC, ODBC or native thrift interface to get that data currently.



Hi @dwayneberry !

Is there no way to retrieve the tables from the mapd server through a connection string using a JDBC driver? Like this:

JDBC;DRIVER=com.mapd.jdbc.MapDDriver;URL={jdbc:mapd://localhost:9091/mapd?user=mapd&password=HyperInteractive};driverFile=mapdjdbc-1.0-SNAPSHOT-jar-with-dependencies.jar;MSTR_JDBC_JAR_FOLDER=C:\Program Files (x86)\MicroStrategy\Drivers\MapD\jdbc;



Maybe I misunderstood your question.

My assumption was you are looking to run SQL queries to system type tables (oracle example SYS.ALL_TABLES) to get metadata from database.

If this is not the case please explain in more detail.



Sorry, I may not have explained it properly.

I am essentially trying to access the mapd database through MicroStrategy, by using a JDBC HTTP connection. By adding the connection string, mentioned above, I should be able to connect and have access to the tables within the mapd database.

I have followed the http protocols to achieve such a connection (as mentioned here https://www.mapd.com/docs/latest/mapd-core-guide/jdbc/), but still no luck. So I am assuming it is because mapdql is not recognizing the following ‘SELECT’ statement:


If my jdbc connection string, mentioned above, is correct than I need to find a ‘SELECT’ statement that mapdql will recognize in order to have access to the database tables, just like when I am able to see a list of tables with mapql commands, like <\t>

Thank you for your help on this.




It appears you are trying to get get metadata via system type tables.

So my above answer stands. We do not support metadata access via SQL queries.

The query you are trying to run to get schema information will not work.

We do not expose metadata via INFORMATION_SCHEMA or any other system tables.

To get metadata information via JDBC, MapD currently supports the api approach which used jdbc api’s like getMetaData



I tried several tool with generic jdbc connection and all of them read catalog with standard jdbc calls.

Anyway if you think you connection is failing because the query to get catalog is failing you have just to create a table containing the list of tables of your database and change the microstrategy catalog query; it’s not a solution, it’s just to validate your connection (I guess you will have to create several tables containing columns and other attributes)


@aznable thanks! one last question; does my connection string below look ok?

JDBC;DRIVER=com.mapd.jdbc.MapDDriver;URL={jdbc:mapd:localhost:9091:mapd?user=mapd&password=HyperInteractive};driverFile=mapdjdbc-1.0-SNAPSHOT-jar-with-dependencies.jar;MSTR_JDBC_JAR_FOLDER=C:\Program Files (x86)\MicroStrategy\Drivers\MapD\jdbc;


assuming the paths are the right ones, looks correct and you can refere to error messages in DSSErrors.log of microstrategy server located on log directory where the server is installed, but now i cannot try from local microstrategy installation because i cannot reach any mapd server.

maybe tommorrow i will be able to do a more Exhaustive test, sorry.

in the meanwhile you could take a look to DSSErrors.log file and, if you can, share with us


ok, just tried with microstrategy 10.4 thru the web interface and i got the connection an table list without any problem

here are the steps

  1. copy the jdbc driver on microstrategy installation with owner of microtrategy software (e.g. /opt/MicroStrategy/drivers)

  2. connected to MicrostrategyWeb and did CREATE --> Add External Data

  3. selected database from sources, then choose Select Tables

  4. Add datasource

here is the config of connection of datasource

the connection complete connection string is


and here is the result

the table name name has been reed with “ODBC Calls” (well they are jdbc, but microstrategy call everything related with database ds this way)


infact microstrategy do the rights calls to get, but to been able to do queries i would make some changes to JDBC drivers; the changes would be minor, at least has been minor in order to make the driver works with Tableau, Lumira and Oracle DV

with this modified driver MSTR is working while using a table with text and integer types only

use just for testing purpose because it’s compiled with an old build of mapd

mapdjdbc-1.0-SNAPSHOT-jar-with-dependencies.zip (2.8 MB)