Rumah  >  Artikel  >  pangkalan data  >  Apakah itu DatabaseMetaData dalam JDBC? Apa gunanya?

Apakah itu DatabaseMetaData dalam JDBC? Apa gunanya?

王林
王林ke hadapan
2023-08-31 16:53:02679semak imbas

Apakah itu DatabaseMetaData dalam JDBC? Apa gunanya?

Biasanya, data tentang data dipanggil metadata. DatabaseMetaData Antara muka menyediakan kaedah untuk mendapatkan maklumat tentang pangkalan data yang anda sambungkan, seperti nama pangkalan data, versi pemacu pangkalan data, panjang lajur maksimum, dll...

The berikut Adakah beberapa kaedah kelas DatabaseMetaData.

Arahan#🎜🎜🎜🎜##🎜🎜🎜🎜 getDriverName()#🎜#Dapatkan semula versi pemacu JDBC semasa#🎜🎜(#🎜🎜)#Nama pengguna 🎜🎜#supportsStoredProcedures()supportsTransactions()Contoh output
Kaedah
Dapatkan semula nama pemandu JDBC semasa #🎜🎜🎜🎜🎜🎜🎜🎜 # getDriverVersion()
Dapatkan nama pengguna. td>
getDatabaseProductName() Dapatkan nama pangkalan data semasa.
getDatabaseProductVersion() Dapatkan versi pangkalan data semasa.
getNumericFunctions() Dapatkan senarai fungsi angka yang tersedia untuk pangkalan data ini.
getStringFunctions() Mengambil senarai fungsi pangkalan data yang tersedia untuk ini.
getSystemFunctions() Mendapatkan semula senarai fungsi sistem yang tersedia untuk ini. td>
getTimeDateFunctions() Mengambil senarai fungsi masa dan tarikh yang tersedia untuk ini.
getURL() Dapatkan semula URL pangkalan data semasa.
supportsSavepoints() Sahkan sama ada pangkalan data semasa menyokong simpan mata#🎜🎜 #
Sahkan cuaca yang disokong prosedur tersimpan untuk pangkalan data semasa.
Sahkan sama ada pangkalan data semasa menyokong transaksi.
Contoh berikut menunjukkan penggunaan kelas DatabaseMetaData.
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

Atas ialah kandungan terperinci Apakah itu DatabaseMetaData dalam JDBC? Apa gunanya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam