データベースのデータを表示および操作できるようにするプログラムを作成しています。見つけたチュートリアルに基づいて、次のコードを作成しました。
public class JavaApplication25 {
public static void main(String[] args) {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:*****";
Connection conn = DriverManager.getConnection(url, "****", "****");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM dbo.Patients");
System.out.println(rs);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
これはコードの出力です:
run:
sun.jdbc.odbc.JdbcOdbcResultSet@1cda59b
BUILD SUCCESSFUL (total time: 1 second)
私の質問は、プログラムが SQL Server データベースにあるデータを表示しないのはなぜですか? 表示する方法を誰か教えてください。
私はこれに再コーディングします:
import java.sql.*;
public class JavaApplication25 {
public static void main(String[] args) {
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:OJT_dsn";
String user = "sa";
String pass = "";
Connection connection = DriverManager.getConnection(url, user, pass);
Statement statement = connection.createStatement();
String sql = "SELECT pIDNo,pLName,pFName,pMI,pSex,pStatus FROM dbo.Patients";
ResultSet result = statement.executeQuery(sql);
while(result.next()){
int ID = result.getInt("ID");
String Lname = result.getString("Lname");
String Fname = result.getString("Fname");
String MI = result.getString("MI");
String Sex = result.getString("Sex");
String Status = result.getString("Status");
System.out.println(ID);
System.out.println(Lname);
System.out.println(Fname);
System.out.println(MI);
System.out.println(Sex);
System.out.println(Status);
}
result.close();
statement.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
}
私のコーディングに何が問題なのですか?今、私はこのエラーを受け取りました:
java.sql.SQLException: 列が sun.jdbc.odbc.JdbcOdbcResultSet.findColumn(JdbcOdbcResultSet.java:1849) で見つかりませんでした。 JavaApplication25.java:28) BUILD SUCCESSFUL (合計時間: 1 秒)