陳鍾誠的程式作品集 -- SQL 資料庫 (Java)

程式作品

C 語言

Java

C#

JavaScript

常用函數

文字處理

遊戲程式

衛星定位

系統程式

資料結構

網路程式

自然語言

人工智慧

機率統計

資訊安全

等待完成

訊息

相關網站

參考文獻

最新修改

簡體版

English

package ccc;
import java.sql.*;
 
public class SQL {
  Connection con = null;
  Statement  stmt = null;
  String     driver = "sun.jdbc.odbc.JdbcOdbcDriver";
  String     dbHead = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=";
  String     dbTail = ";DriverID=22;READONLY=false}";
 
  public static void main(String[] args) throws Exception {
    SQL sql = new SQL();
    sql.openDB("SQL\\person");
    String text = sql.sql2text("SELECT * FROM person");
    System.out.println(text);
    sql.closeDB();
  }
 
  void openDB(String dbName) throws Exception {
    Class.forName(driver);
    con = DriverManager.getConnection(dbHead+dbName+dbTail);
    stmt = con.createStatement();
  }
 
  String sql2text(String sql) throws Exception {
    StringBuffer rzText = new StringBuffer();
    ResultSet rs = stmt.executeQuery(sql);
    ResultSetMetaData md = rs.getMetaData();
    int maxFields = md.getColumnCount();
    String[] fieldNames = new String[maxFields];
    for (int fi=1; fi<=maxFields; fi++) {
      String fName = md.getColumnLabel(fi);
      fieldNames[fi-1] = fName;
      rzText.append(fName);
      if (fi<maxFields) rzText.append(",");
    }
    rzText.append("\r\n");
    while (rs.next()) {
      for (int fi=1; fi<=maxFields; fi++) {
        rzText.append(rs.getString(fi));
        if (fi<maxFields) rzText.append(",");
      }
      rzText.append("\r\n");
    }
    return rzText.toString();
  }
 
  void closeDB() throws Exception {
    con.close();
  }
 
}

Facebook

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License