Heim > Datenbank > MySQL-Tutorial > Was sind DatabaseMetaData in JDBC? Was ist der Sinn?

Was sind DatabaseMetaData in JDBC? Was ist der Sinn?

王林
Freigeben: 2023-08-31 16:53:02
nach vorne
739 Leute haben es durchsucht

Was sind DatabaseMetaData in JDBC? Was ist der Sinn?

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.

Beschreibung
Methode
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.

Beispiel

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());
   }
}
Nach dem Login kopieren

Ausgabe

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
Nach dem Login kopieren

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!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage