DatabaseMetaData: getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern) : DatabaseMetaData « java.sql « Java by API






DatabaseMetaData: getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern)

 
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Main {

  public static void main(String[] args) throws Exception {
    Connection conn = getMySqlConnection();
    System.out.println("Got Connection.");
    Statement st = conn.createStatement();
    st.executeUpdate("drop table survey;");
    st.executeUpdate("create table survey (id int,name varchar(30));");
    st.executeUpdate("insert into survey (id,name ) values (1,'nameValue')");

    ResultSet privileges = null;
    DatabaseMetaData meta = conn.getMetaData();
    // The '_' character represents any single character.
    // The '%' character represents any sequence of zero
    // or more characters.
    privileges = meta.getTablePrivileges(conn.getCatalog(), "%", "survey");
    while (privileges.next()) {
      String catalog = privileges.getString("TABLE_CAT");
      String schema = privileges.getString("TABLE_SCHEM");
      String tableName = privileges.getString("TABLE_NAME");
      String privilege = privileges.getString("PRIVILEGE");
      String grantor = privileges.getString("GRANTOR");
      String grantee = privileges.getString("GRANTEE");
      String isGrantable = privileges.getString("IS_GRANTABLE");

      System.out.println("table name:" + tableName);
      System.out.println("catalog:"+catalog);
      System.out.println("schema:"+ schema);
      System.out.println("privilege:"+privilege);
      System.out.println("grantor:"+grantor);
      System.out.println("isGrantable:"+isGrantable);
      System.out.println("grantee:"+grantee);
    }

    st.close();
    conn.close();
  }

  private static Connection getHSQLConnection() throws Exception {
    Class.forName("org.hsqldb.jdbcDriver");
    System.out.println("Driver Loaded.");
    String url = "jdbc:hsqldb:data/tutorial";
    return DriverManager.getConnection(url, "sa", "");
  }

  public static Connection getMySqlConnection() throws Exception {
    String driver = "org.gjt.mm.mysql.Driver";
    String url = "jdbc:mysql://localhost/demo2s";
    String username = "oost";
    String password = "oost";

    Class.forName(driver);
    Connection conn = DriverManager.getConnection(url, username, password);
    return conn;
  }

  public static Connection getOracleConnection() throws Exception {
    String driver = "oracle.jdbc.driver.OracleDriver";
    String url = "jdbc:oracle:thin:@localhost:1521:caspian";
    String username = "mp";
    String password = "mp2";

    Class.forName(driver); // load Oracle driver
    Connection conn = DriverManager.getConnection(url, username, password);
    return conn;
  }

}

   
  








Related examples in the same category

1.DatabaseMetaData.columnNullable
2.DatabaseMetaData: getCatalogs()
3.DatabaseMetaData: getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)
4.DatabaseMetaData: getDatabaseMajorVersion()
5.DatabaseMetaData: getDatabaseMinorVersion()
6.DatabaseMetaData: getDatabaseProductName()
7.DatabaseMetaData: getDatabaseProductVersion()
8.DatabaseMetaData: getDefaultTransactionIsolation()
9.DatabaseMetaData: getDriverName()
10.DatabaseMetaData: getDriverVersion()
11.DatabaseMetaData: getExportedKeys(String catalog, String schema, String table)
12.DatabaseMetaData: getImportedKeys(String catalog, String schema, String table)
13.DatabaseMetaData: getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate)
14.DatabaseMetaData: getJDBCMajorVersion()
15.DatabaseMetaData: getJDBCMinorVersion()
16.DatabaseMetaData: getMaxCharLiteralLength()
17.DatabaseMetaData: getMaxRowSize()
18.DatabaseMetaData: getMaxStatementLength()
19.DatabaseMetaData: getMaxTablesInSelect()
20.DatabaseMetaData: getMaxTableNameLength()
21.DatabaseMetaData: getNumericFunctions()
22.DatabaseMetaData: getPrimaryKeys(String catalog, String schema, String table)
23.DatabaseMetaData: getProcedures(String catalog, String schemaPattern, String procedureNamePattern)
24.DatabaseMetaData: getProcedureTerm()
25.DatabaseMetaData: getSchemas()
26.DatabaseMetaData: getSQLKeywords()
27.DatabaseMetaData: getStringFunctions()
28.DatabaseMetaData: getSystemFunctions()
29.DatabaseMetaData: getTableTypes()
30.DatabaseMetaData: getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
31.DatabaseMetaData: getTimeDateFunctions()
32.DatabaseMetaData: getTypeInfo()
33.DatabaseMetaData: getURL()
34.DatabaseMetaData: getUserName()
35.DatabaseMetaData: nullsAreSortedHigh()
36.DatabaseMetaData: supportsANSI92EntryLevelSQL()
37.DatabaseMetaData: supportsANSI92FullSQL()
38.DatabaseMetaData: supportsANSI92IntermediateSQL()
39.DatabaseMetaData: supportsBatchUpdates()
40.DatabaseMetaData: supportsCoreSQLGrammar()
41.DatabaseMetaData: supportsExtendedSQLGrammar()
42.DatabaseMetaData: supportsFullOuterJoins()
43.DatabaseMetaData: supportsMinimumSQLGrammar()
44.DatabaseMetaData: supportsMixedCaseQuotedIdentifiers()
45.DatabaseMetaData: supportsPositionedDelete()
46.DatabaseMetaData: supportsResultSetConcurrency(int type, int concurrency)
47.DatabaseMetaData: supportsResultSetHoldability(int holdability)
48.DatabaseMetaData: supportsResultSetType(int type)
49.DatabaseMetaData: supportsStatementPooling()
50.DatabaseMetaData: supportsTableCorrelationNames()
51.DatabaseMetaData: supportsTransactionIsolationLevel(int level)
52.DatabaseMetaData: supportsTransactions()