The Microsoft JDBC driver version 7.4.1 is broken regarding the DatabaseMetaData call getColumns (Issue 1136).

The problem occurs when using an escape character to escape a name including characters that need to be escaped. 


An example is when getting columns for a table with a name like my_table. In communication with the driver the "_" character is escaped and the call to the driver is using  my\_table as the table name. 


This will affect the functionality of DbVisualizer in the following way:

  • Auto Completion of Columns does not work. 
  • The Columns Tab when selecting Table tree object will not show any columns.
  • The Columns Tab when selecting the Columns tree object for a Table will not show any columns.


Resolution

Switch to an older version of the driver such as the 7.2.2 version. There is also a preview available for the 8.1.0 release in the Microsoft JDBC Driver For SQL Server Maven repository