반응형
JDBC ResultSet에서 열 수를 가져오려면 어떻게 해야 합니까?
csv 파일에 액세스하기 위해 CsvJdbc(csv 파일용 JDBC 드라이버)를 사용하고 있습니다.csv 파일에 몇 개의 열이 포함되어 있는지 알 수 없습니다.열 수는 어떻게 얻을 수 있나요?이것에 대해 JDBC 기능이 있습니까?java.sql에서 이 메서드를 찾을 수 없습니다.결과 세트
파일에 액세스 할 때는, CsvJdbc Web 사이트의 예시와 같은 코드를 사용합니다.
ResultSetMetaData에서 열 번호를 얻을 수 있습니다.
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query);
ResultSetMetaData rsmd = rs.getMetaData();
int columnsNumber = rsmd.getColumnCount();
PreparedStatement ps=con.prepareStatement("select * from stud");
ResultSet rs=ps.executeQuery();
ResultSetMetaData rsmd=rs.getMetaData();
System.out.println("columns: "+rsmd.getColumnCount());
System.out.println("Column Name of 1st column: "+rsmd.getColumnName(1));
System.out.println("Column Type Name of 1st column: "+rsmd.getColumnTypeName(1));
결과 집합에서 코드와 함께 얻을 수 있는 열 수(DB가 Postgre를 사용하므로)SQL):
//Postgre용 드라이버 로드SQLClass.forName("org.postgresql")드라이버"; 문자열 URL = "jdbc:postgresql://localhost/test";속성 소품 = 새 속성();frops.setProperty("user", mydbuser"); frops.setProperty("password", mydbpass"); Connection conn = DriverManager.getConnection(url, 소품); //문 작성스테이트먼트 stat = conn.createStatement(); //결과 세트 표시ResultSet rs = stat.executeQuery("SELECT c1, c2, c3, c4, c5 FROM MY_TABLE"); //결과 집합에서 메타데이터 제공ResultSetMetaData rsmd = rs.getMetaData(); //메타데이터 개체에서 개수 가져오기int num Of Cols = rsmd.get Column Count();
그러나 열에 대한 더 많은 메타 정보를 얻을 수 있습니다.
for(int i = 1; i <= numOfCols; i++)
{
System.out.println(rsmd.getColumnName(i));
}
또한 테이블뿐만 아니라 DB에 대한 정보도 얻을 수 있습니다. 방법은 여기와 여기를 참조하십시오.
연결을 확립하고 쿼리를 실행한 후 다음 작업을 수행합니다.
ResultSet resultSet;
int columnCount = resultSet.getMetaData().getColumnCount();
System.out.println("column count : "+columnCount);
그러면 데이터가 열로 인쇄되고 마지막 열에 도달하면 새 행이 나타납니다.
ResultSetMetaData resultSetMetaData = res.getMetaData();
int columnCount = resultSetMetaData.getColumnCount();
for(int i =1; i<=columnCount; i++){
if(!(i==columnCount)){
System.out.print(res.getString(i)+"\t");
}
else{
System.out.println(res.getString(i));
}
}
언급URL : https://stackoverflow.com/questions/2614416/how-to-get-the-number-of-columns-from-a-jdbc-resultset
반응형
'itsource' 카테고리의 다른 글
어레이가 비어 있거나 존재하는지 확인합니다. (0) | 2022.10.15 |
---|---|
Prepared Statement set Null(..) (0) | 2022.10.15 |
Visual Studio Code(VSCode)에서 php를 실행 또는 디버깅하는 방법 (0) | 2022.10.15 |
MySQL Select Query - 값의 처음 10자만 가져옵니다. (1) | 2022.10.15 |
하위 디렉토리에서 파일을 가져오시겠습니까? (1) | 2022.10.15 |