Java DatabaseMetaData getMaxColumnsInGroupBy() method with example.

The getMaxColumnsInGroupBy() method of the DatabaseMetaData interface is used to find out the maximum number of columns that the underlying database allows in a GROUP BY clause.

This method returns an integer value, representing the maximum number of columns allowed in a GROUP BY clause. If this value is 0 it indicates that there is no limit or, limit is unknown.

To get the DatabaseMetaData object −

  • Make sure your database is up and running.

  • Register the driver using the registerDriver() method of the DriverManager class. Pass an object of the driver class corresponding to the underlying database.

  • Get the connection object using the getConnection() method of the DriverManager class. Pass the URL the database and, user name, password of a user in the database, as String variables.

  • Get the DatabaseMetaData object with respect to the current connection using the getMetaData() method of the Connection interface.

Finally, get the maximum number of columns allowed in a GROUP BY clause, by invoking the getMaxColumnsInGroupBy() method (of the DatabaseMetaData interface).

Example

Following JDBC example connects to MySQL database, retrieves and prints the maximum number of columns allowed in a GROUP BY clause, by it.

<span class="kwd">import</span><span class="pln"> java</span><span class="pun">.</span><span class="pln">sql</span><span class="pun">.</span><span class="typ">Connection</span><span class="pun">;</span>
<span class="kwd">import</span><span class="pln"> java</span><span class="pun">.</span><span class="pln">sql</span><span class="pun">.</span><span class="typ">DatabaseMetaData</span><span class="pun">;</span>
<span class="kwd">import</span><span class="pln"> java</span><span class="pun">.</span><span class="pln">sql</span><span class="pun">.</span><span class="typ">DriverManager</span><span class="pun">;</span>
<span class="kwd">import</span><span class="pln"> java</span><span class="pun">.</span><span class="pln">sql</span><span class="pun">.</span><span class="typ">SQLException</span><span class="pun">;</span>
<span class="kwd">public</span><span class="pln"> </span><span class="kwd">class</span><span class="pln"> </span><span class="typ">DatabaseMetadata_getMaxColumnsInGroupBy </span><span class="pun">{</span>
<span class="kwd">   public</span><span class="pln"> </span><span class="kwd">static</span><span class="pln"> </span><span class="kwd">void</span><span class="pln"> main</span><span class="pun">(</span><span class="typ">String</span><span class="pln"> args</span><span class="pun">[])</span><span class="pln"> </span><span class="kwd">throws</span><span class="pln"> </span><span class="typ">SQLException</span><span class="pln"> </span><span class="pun">{</span>
<span class="com">      //Registering the Driver</span>
<span class="typ">      DriverManager</span><span class="pun">.</span><span class="pln">registerDriver</span><span class="pun">(</span><span class="kwd">new</span><span class="pln"> com</span><span class="pun">.</span><span class="pln">mysql</span><span class="pun">.</span><span class="pln">jdbc</span><span class="pun">.</span><span class="typ">Driver</span><span class="pun">());</span>
<span class="com">      //Getting the connection</span>
<span class="typ">      String</span><span class="pln"> url </span><span class="pun">=</span><span class="pln"> </span><span class="str">"jdbc:mysql://localhost/mydatabase"</span><span class="pun">;</span>
<span class="typ">      Connection</span><span class="pln"> con </span><span class="pun">=</span><span class="pln"> </span><span class="typ">DriverManager</span><span class="pun">.</span><span class="pln">getConnection</span><span class="pun">(</span><span class="pln">url</span><span class="pun">,</span><span class="pln"> </span><span class="str">"root"</span><span class="pun">,</span><span class="pln"> </span><span class="str">"password"</span><span class="pun">);</span>
<span class="typ">      System</span><span class="pun">.</span><span class="kwd">out</span><span class="pun">.</span><span class="pln">println</span><span class="pun">(</span><span class="str">"Connection established......"</span><span class="pun">);</span>
<span class="com">      //Retrieving the meta data object</span>
<span class="typ">      DatabaseMetaData</span><span class="pln"> metaData </span><span class="pun">=</span><span class="pln"> con</span><span class="pun">.</span><span class="pln">getMetaData</span><span class="pun">();</span>
<span class="com">      //Retrieving the maximum number of columns allowed in a GROUP BY clause</span>
<span class="kwd">      int</span><span class="pln"> maxColumns </span><span class="pun">=</span><span class="pln"> metaData</span><span class="pun">.</span><span class="pln">getMaxColumnsInGroupBy</span><span class="pun">();</span>
<span class="typ">      System</span><span class="pun">.</span><span class="kwd">out</span><span class="pun">.</span><span class="pln">println</span><span class="pun">(</span><span class="str">"Maximum number of columns allowed in a GROUP BY clause: "</span><span class="pun">+</span><span class="pln">maxColumns</span><span class="pun">);</span>
<span class="pun">   }</span>
<span class="pun">}</span>

Output

Connection established......
Maximum number of columns allowed in GROUP BY clause: 64
Updated on: 2019-07-30T22:30:26+05:30

120 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements