databasemetadatatest.java

来自「PostgreSQL7.4.6 for Linux」· Java 代码 · 共 498 行 · 第 1/2 页

JAVA
498
字号
			}			assertTrue ( j == 2 );			rs = dbmd.getExportedKeys( null, "", "people" );			// this is hacky, but it will serve the purpose			assertTrue ( rs.next() );			assertEquals( "people", rs.getString( "PKTABLE_NAME" ) );			assertEquals( "id", rs.getString( "PKCOLUMN_NAME" ) );			assertEquals( "users", rs.getString( "FKTABLE_NAME" ) );			assertEquals( "people_id", rs.getString( "FKCOLUMN_NAME" ) );			assertTrue( rs.getString( "FK_NAME" ).startsWith( "people" ) );			TestUtil.dropTable( con1, "users" );			TestUtil.dropTable( con1, "people" );			TestUtil.dropTable( con1, "policy" );		}		catch (SQLException ex)		{			fail(ex.getMessage());		}	}	public void testColumns()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getColumns(null,null,"pg_class",null);			rs.close();		} catch (SQLException sqle) {			sqle.printStackTrace();			fail(sqle.getMessage());		}	}	public void testColumnPrivileges()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getColumnPrivileges(null,null,"pg_statistic",null);			rs.close();		} catch (SQLException sqle) {			sqle.printStackTrace();			fail(sqle.getMessage());		}	}	public void testTablePrivileges()	{		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getTablePrivileges(null,null,"testmetadata");			boolean l_foundSelect = false;			while (rs.next()) {				if (rs.getString("GRANTEE").equals(TestUtil.getUser()) 					&& rs.getString("PRIVILEGE").equals("SELECT")) l_foundSelect = true; 			}			rs.close();			//Test that the table owner has select priv			assertTrue("Couldn't find SELECT priv on table testmetadata for " + TestUtil.getUser(),l_foundSelect);		} catch (SQLException sqle) {			sqle.printStackTrace();			fail(sqle.getMessage());		}	}	public void testPrimaryKeys()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getPrimaryKeys(null,null,"pg_class");			rs.close();		} catch (SQLException sqle) {			sqle.printStackTrace();			fail(sqle.getMessage());		}	}	public void testIndexInfo()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getIndexInfo(null,null,"pg_class",false,false);			rs.close();		} catch (SQLException sqle) {			sqle.printStackTrace();			fail(sqle.getMessage());		}	}	public void testTableTypes()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getTableTypes();			rs.close();		} catch (SQLException sqle) {			sqle.printStackTrace();			fail(sqle.getMessage());		}	}	public void testProcedureColumns()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getProcedureColumns(null,null,null,null);			rs.close();		} catch (SQLException sqle) {			sqle.printStackTrace();			fail(sqle.getMessage());		}	}	public void testVersionColumns()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getVersionColumns(null,null,"pg_class");			rs.close();		} catch (SQLException sqle) {			fail(sqle.getMessage());		}	}	public void testBestRowIdentifier()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getBestRowIdentifier(null,null,"pg_type",DatabaseMetaData.bestRowSession,false);			rs.close();		} catch (SQLException sqle) {			fail(sqle.getMessage());		}	}	public void testProcedures()	{		// At the moment just test that no exceptions are thrown KJ		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getProcedures(null,null,null);			rs.close();		} catch (SQLException sqle) {			fail(sqle.getMessage());		}	}	public void testCatalogs()	{		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getCatalogs();			boolean foundTemplate0 = false;			boolean foundTemplate1 = false;			while(rs.next()) {				String database = rs.getString("TABLE_CAT");				if ("template0".equals(database)) {					foundTemplate0 = true;				} else if ("template1".equals(database)) {					foundTemplate1 = true;				}			}			rs.close();			assertTrue(foundTemplate0);			assertTrue(foundTemplate1);		} catch(SQLException sqle) {			fail(sqle.getMessage());		}	}	public void testSchemas()	{		try		{			DatabaseMetaData dbmd = con.getMetaData();			assertNotNull(dbmd);			ResultSet rs = dbmd.getSchemas();			boolean foundPublic = false;			boolean foundEmpty = false;			boolean foundPGCatalog = false;			int count;					for(count=0; rs.next(); count++) {				String schema = rs.getString("TABLE_SCHEM");				if ("public".equals(schema)) {					foundPublic = true;				} else if ("".equals(schema)) {					foundEmpty = true;				} else if ("pg_catalog".equals(schema)) {					foundPGCatalog = true;				}			}			rs.close();			if (TestUtil.haveMinimumServerVersion(con,"7.3")) {				assertTrue(count >= 2);				assertTrue(foundPublic);				assertTrue(foundPGCatalog);				assertTrue(!foundEmpty);			} else {				assertEquals(count,1);				assertTrue(foundEmpty);				assertTrue(!foundPublic);				assertTrue(!foundPGCatalog);			}		} catch (SQLException sqle) {			fail(sqle.getMessage());		}	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?