Rumah >pangkalan data >tutorial mysql >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.
Kaedah | Arahan|
---|---|
Dapatkan semula nama pemandu JDBC semasa | #๐##๐๐๐๐๐๐๐๐ # getDriverVersion() |
#๐๐(#๐๐)#Nama pengguna ๐๐# | 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()); } } | outputConnection 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!