Allgemein werden Daten über Daten als Metadaten bezeichnet. Die DatabaseMetaData-Schnittstelle bietet Methoden zum Abrufen von Informationen über die Datenbank, mit der Sie verbunden sind, wie z. B. Datenbankname, Datenbanktreiberversion, maximale Spaltenlänge usw.
Hier sind einige Methoden der DatabaseMetaData-Klasse.
Methode | Beschreibung|
---|---|
getDriverName() | Den Namen des aktuellen JDBC-Treibers abrufen |
getDriverVersion() | Rufen Sie die aktuelle JDBC-Treiberversion ab td> |
getUserName() | Benutzernamen abrufen. |
getDatabaseProductName() | Rufen Sie den Namen der aktuellen Datenbank ab. |
getDatabaseProductVersion() | Rufen Sie die Version der aktuellen Datenbank ab. |
getNumericFunctions() | Rufen Sie die Liste der für diese Datenbank verfügbaren numerischen Funktionen ab. |
getStringFunctions() | Ruft die Liste der für diese Datenbank verfügbaren numerischen Funktionen ab. td> |
getSystemFunctions() | Rufen Sie die Liste der für diese Datenbank verfügbaren Systemfunktionen ab. | getTimeDateFunctions() | Ruft eine Liste der für diese Datenbank verfügbaren Zeit- und Datumsfunktionen ab. |
getURL() | Rufen Sie die URL der aktuellen Datenbank ab. |
supportsSavepoints() | Überprüfen Sie, ob die aktuelle Datenbank Savepoints unterstützt |
supportsStoredProcedures() | Überprüfen Sie, ob das Wetter der aktuellen Datenbank gespeicherte Prozeduren unterstützt. |
supportsTransactions() | Überprüfen Sie, ob die aktuelle Datenbank Transaktionen unterstützt. |
Das folgende Beispiel demonstriert die Verwendung der DatabaseMetaData-Klasse.
import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; public class DatabaseMetadataExample { public static void main(String args[])throws Exception { //Getting the connection String mysqlUrl = "jdbc:mysql://localhost/sampleDB"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); //Creating the DatabaseMetaData object DatabaseMetaData dbMetadata = con.getMetaData(); //invoke the supportsBatchUpdates() method. boolean bool = dbMetadata.supportsBatchUpdates(); if(bool) { System.out.println("Underlying database supports batch updates"); } else { System.out.println("Underlying database doesnt supports batch updates"); } //Retrieving the driver name System.out.println(dbMetadata.getDriverName()); //Retrieving the driver version System.out.println(dbMetadata.getDriverVersion()); //Retrieving the user name System.out.println(dbMetadata.getUserName()); //Retrieving the URL System.out.println(dbMetadata.getURL()); //Retrieving the list of numeric functions System.out.println("Numeric functions: "+dbMetadata.getNumericFunctions()); System.out.println(""); //Retrieving the list of String functions System.out.println("String functions: "+dbMetadata.getStringFunctions()); System.out.println(""); //Retrieving the list of system functions System.out.println("System functions: "+dbMetadata.getSystemFunctions()); System.out.println(""); //Retrieving the list of time and date functions System.out.println("Time and Date funtions: "+dbMetadata.getTimeDateFunctions()); } }
Connection established...... Underlying database supports batch updates MySQL-AB JDBC Driver mysql-connector-java-5.1.12 ( Revision: ${bzr.revision-id} ) root@localhost jdbc:mysql://localhost/sampleDB Numeric functions: ABS,ACOS,ASIN,ATAN,ATAN2,BIT_COUNT,CEILING,COS,COT,DEGREES,EXP,FLOOR,LOG,LOG10,MAX ,MIN,MOD,PI,POW,POWER,RADIANS,RAND,ROUND,SIN,SQRT,TAN,TRUNCATE String functions: ASCII,BIN,BIT_LENGTH,CHAR,CHARACTER_LENGTH,CHAR_LENGTH,CONCAT,CONCAT_WS,CONV,ELT,E XPORT_SET,FIELD,FIND_IN_SET,HEX,INSERT,INSTR,LCASE,LEFT,LENGTH,LOAD_FILE,LOCATE,LO CATE,LOWER,LPAD,LTRIM,MAKE_SET,MATCH,MID,OCT,OCTET_LENGTH,ORD,POSITION,QUOTE,REPEA T,REPLACE,REVERSE,RIGHT,RPAD,RTRIM,SOUNDEX,SPACE,STRCMP,SUBSTRING,SUBSTRING,SUBSTR ING,SUBSTRING,SUBSTRING_INDEX,TRIM,UCASE,UPPER System functions: DATABASE,USER,SYSTEM_USER,SESSION_USER,PASSWORD,ENCRYPT,LAST_INSERT_ID,VERSION Time and Date funtions: DAYOFWEEK,WEEKDAY,DAYOFMONTH,DAYOFYEAR,MONTH,DAYNAME,MONTHNAME,QUARTER,WEEK,YEAR,H OUR,MINUTE,SECOND,PERIOD_ADD,PERIOD_DIFF,TO_DAYS,FROM_DAYS,DATE_FORMAT,TIME_FORMAT ,CURDATE,CURRENT_DATE,CURTIME,CURRENT_TIME,NOW,SYSDATE,CURRENT_TIMESTAMP,UNIX_TIME STAMP,FROM_UNIXTIME,SEC_TO_TIME,TIME_TO_SEC
Das obige ist der detaillierte Inhalt vonWas sind DatabaseMetaData in JDBC? Was ist der Sinn?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!