1. 程式人生 > 其它 >幾種常見資料庫的jdbc連線及簡單查詢

幾種常見資料庫的jdbc連線及簡單查詢

1、Hive

1)driver

org.apache.hive.jdbc.HiveDriver

2)url

jdbc:hive2://<ip>:<埠>/<資料庫>

3)查詢所有庫

show databases

4)查詢所有表

show tables

2、MySQL

1)driver

com.mysql.jdbc.Driver
//8.0以上版本
com.mysql.cj.jdbc.Driver

2)url

jdbc:mysql://<ip>:<埠>/<資料庫>

3)查詢所有表

show tables

4)查詢所有欄位

select COLUMN_NAME from INFORMATION_SCHEMA.Columns where table_name='<表名>'

3、Oracle

1)driver

oracle.jdbc.driver.OracleDriver

2)url

jdbc:oracle:thin:@<ip>:<埠>:<資料庫>

3)查詢所有schema

select SYS_CONTEXT('USERENV','CURRENT_SCHEMA') CURRENT_SCHEMA from dual

4)查詢所有表

select table_name item_name from all_tables where owner = '<schema>' union all select view_name item_name from all_views where owner = '<schema>' order by item_name

5)查詢所有欄位

select COLUMN_NAME from sys.all_tab_columns where table_name='<表名>' and owner = '<schema>' ORDER BY COLUMN_ID

4、SQL Server

1)driver

com.microsoft.sqlserver.jdbc.SQLServerDriver

2)url

jdbc:sqlserver://<ip>:<埠>;DatabaseName=<資料庫>

3)查詢所有表

SELECT name FROM SysObjects Where Type='U'

4)查詢所有欄位

SELECT Name from syscolumns WHERE id=Object_Id('<表名>') order by colid

5、達夢

1)driver

dm.jdbc.driver.DmDriver

2)url

jdbc:dm://<ip>:<埠>/<資料庫>

3)查詢所有schema

select distinct object_name TABLE_SCHEMA from all_objects where object_type = 'SCH'

4)查詢所有表

select table_name from dba_tables where owner='<schema>'

5)查詢所有欄位

select column_name from all_tab_columns where owner='<schema>' and Table_Name='<表名>'

6、Kingbase

1)driver

com.kingbase8.Driver

2)url

jdbc:kingbase8://<ip>:<埠>/<資料庫>

3)查詢所有schema

select nspname from sys_namespace a left join sys_user b on a.nspowner = b.usesysid where b.usename = '<使用者名稱>' and  nspacl is not null

4)查詢所有表

SELECT table_name FROM information_schema.tables WHERE table_schema = '<schema>'

5)查詢所有欄位

SELECT column_name FROM information_schema.columns WHERE table_schema = '<schema>' and table_name='<表名>'

7、Sqlite

1)driver

org.sqlite.JDBC

2)url

jdbc:sqlite:<資料庫檔案所在>

3)查詢所有表

select tbl_name from sqlite_master where type='table'

4)查詢所有欄位

select * from '<表名>'

附加

//ResultSet中有一個getMetaData方法可以獲取讀取表的表頭以及欄位型別資訊
ResultSetMetaData rsMetaData = rs.getMetaData();
int columnCount = rsMetaData.getColumnCount();
for (int i = 1; i <= columnCount; i++) {
   System.out.println(rsMetaData.getColumnName(i)+" "+rsMetaData.getColumnTypeName(i));
}