Java DatabaseMetaData getSQLKeywords() 方法及示例
此方法檢索底層資料庫的所有 SQL 關鍵字列表,並以包含所有關鍵字(以逗號分隔)的字串變數形式返回。
要獲取資料庫中的關鍵字列表:
確保您的資料庫正在執行。
使用 DriverManager 類的 registerDriver() 方法註冊驅動程式。傳遞與底層資料庫對應的驅動程式類的物件。
使用 DriverManager 類的 getConnection() 方法獲取連線物件。將資料庫的 URL 以及資料庫中使用者的使用者名稱和密碼(作為字串變數)作為引數傳遞。
使用 Connection 介面的 getMetaData() 方法獲取當前連線的 DatabaseMetaData 物件。
最後,透過呼叫 DatabaseMetaData 介面的 getSQLKeywords() 方法,檢索底層資料庫的關鍵字字串列表。
示例
以下 JDBC 程式建立與 MySQL 資料庫的連線,並檢索底層資料庫的關鍵字列表。
import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.SQLException; import java.util.StringTokenizer; public class DatabaseMetaData_getSQLKeywords { public static void main(String args[]) throws SQLException { //Registering the Driver DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //Getting the connection String url = "jdbc:mysql:///example_database"; Connection con = DriverManager.getConnection(url, "root", "password"); System.out.println("Connection established......"); //Retrieving the meta data object DatabaseMetaData metaData = con.getMetaData(); //Retrieving the keywords of the underlying in the database String sqlKeyWords = metaData.getSQLKeywords(); StringTokenizer tokenizer = new StringTokenizer(sqlKeyWords, ","); while(tokenizer.hasMoreElements()) { System.out.println(tokenizer.nextToken()); } } }
輸出
Connection established...... ACCESSIBLE,ANALYZE,ASENSITIVE,BEFORE,BIGINT,BINARY,BLOB,CALL,CHANGE,CONDITION,DATABASE,DATABASES, DAY_HOUR,DAY_MICROSECOND,DAY_MINUTE,DAY_SECOND,DELAYED,DETERMINISTIC,DISTINCTROW,DIV,DUAL,EACH,ELSEIF, ENCLOSED,ESCAPED,EXIT,EXPLAIN,FLOAT4,FLOAT8,FORCE,FULLTEXT,HIGH_PRIORITY,HOUR_MICROSECOND,HOUR_MINUTE, HOUR_SECOND,IF,IGNORE,INFILE,INOUT,INT1,INT2,INT3,INT4,INT8,ITERATE,KEYS,KILL,LEAVE,LIMIT,LINEAR,LINES, LOAD,LOCALTIME,LOCALTIMESTAMP,LOCK,LONG,LONGBLOB,LONGTEXT,LOOP,LOW_PRIORITY,MEDIUMBLOB,MEDIUMINT,MEDIUMTEXT, MIDDLEINT,MINUTE_MICROSECOND,MINUTE_SECOND,MOD,MODIFIES,NO_WRITE_TO_BINLOG,OPTIMIZE,OPTIONALLY,OUT,OUTFILE, PURGE,RANGE,READS,READ_ONLY,READ_WRITE,REGEXP,RELEASE,RENAME,REPEAT,REPLACE,REQUIRE,RETURN,RLIKE,SCHEMAS, SECOND_MICROSECOND,SENSITIVE,SEPARATOR,SHOW,SPATIAL,SPECIFIC,SQLEXCEPTION,SQL_BIG_RESULT,SQL_CALC_FOUND_ROWS, SQL_SMALL_RESULT,SSL,STARTING,STRAIGHT_JOIN,TERMINATED,TINYBLOB,TINYINT,TINYTEXT,TRIGGER,UNDO,UNLOCK,UNSIGNED, USE,UTC_DATE,UTC_TIME,UTC_TIMESTAMP,VARBINARY,VARCHARACTER,WHILE,X509,XOR,YEAR_MONTH,ZEROFILL
廣告