国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

新手上路:JDBC初級應用實例(二)

2019-11-18 12:38:51
字體:
來源:轉載
供稿:網友

  有時,我們對一種新的數據庫根本不知道它的結構或者是其中的內容,好壞么我們如何來獲取數據庫的情況呢?
  
  真實的例子是這樣的,我的朋友的公司接到了一個單子,對方使用的數據庫是叫什么/"titanium/"的,說實話由于本人的孤陋寡聞,在此之前從來不知道還有這種數據庫,更別說如何訪問了,現在朋友要看里面有什么/"東西/",當然是一籌莫展.所以只好找我.
  
  接到電話后,我先問他是什么平臺上跑的,假如連結的,他說是在windows下可以建立ODBC數據源,哈哈,就是說可以用java建立Connection了,OK只能建立一下Connection,那么就可以得到這個數據庫的所有元信息:
  
  DatabaseMetadata dbmd = conn.getMetadata();然后你可以從這個對象獲取以下信息:
  getUrl();   //返回與這個數據庫的連結的URL,當然是已知的,要不你怎么連上去
  getUserName(); //返回與這個數據庫的連結的用戶,同上
  isReadOnly();數據庫是否為只讀
  getDatabasePRodUCeName();//數據庫產品名稱
  getDatabaseProduceVersion();//版本號
  getDriverName();//驅動程序
  getDriverVersion();//驅動程序版本
  
  以上內容沒有什么意義
  
  ResultSet getTables(String catalog,
  String schemaPattern,
  String tableNamePattern,
  String[] types)
  可以得到該庫中/"表/"的所有情況,這里的表包括表,視圖,系統表,臨時空間,別名,同義詞對于各參數:
  String catalog,表的目錄,可能為null,/"null/"匹配所有
  String schemaPattern,表的大綱,同上
  String tableNamePattern,表名,同上
  String[] types,表的類型,/"null/"匹配所有,可用的類型為:
  TABLE,VIEW,SYSEM TABLE,GLOBAL TEMPORARY,LOCAL TEMPORARY,ALIAS,SYNONYM
  
  例如:
  DatabaseMetaData dbmd = conn.getMetaData();
  ResultSet rs = dbmd.getTables(null,null,null,null);
  ResultSetMetaData rsmd = rs.getMetaData();
  int j = rsmd.getColumnCount();
  for(int i=1;i<=j;i++){
  out.print(rsmd.getColumnLabel(i)+/"http://t/");
  }
  out.println();
  while(rs.next()){
  for(int i=1;i<=j;i++){
  out.print(rs.getString(i)+/"http://t/");
  }
  out.println();
  }
  對于更具體的表中的列的信息,可以用dbmd(不是rsmd).getColumns(
  String catalog,
  String schemaPattern,
  String tableNamePattern,
  String columnNamePattern
  )
  不僅可以獲得rsmd中的信息,還可以獲得列的大小,小數位數,精度,缺省值,列在表中的位置等相關信息.
  
  還有兩個方法,調用和獲取表信息一樣,可以獲得存儲過程和索引的信息:
  ResultSet getProcedures(
  String catalog,
  String schemaPattern,
  String procedurePattern
  );
  ResultSet getIndexINFO(
  String catalog,
  String schemaPattern,
  String table,
  boolean unique,boolean approximate
  );

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白朗县| 重庆市| 芦溪县| 漠河县| 怀仁县| 宁强县| 介休市| 当涂县| 清新县| 藁城市| 缙云县| 梨树县| 木兰县| 会昌县| 嫩江县| 赤城县| 日土县| 新乡市| 逊克县| 安阳市| 青海省| 四子王旗| 监利县| 大厂| 东乌珠穆沁旗| 高密市| 积石山| 阿拉善左旗| 三穗县| 阜平县| 隆德县| 阿勒泰市| 二手房| 高安市| 临漳县| 岗巴县| 勃利县| 汾阳市| 宁蒗| 新建县| 晋中市|