일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 이클립스에서sql자료넣기
- xcode #swift #app만들기이미지 #ios앱만들기
- 자바정수변환
- DATE데이터타입
- 이클립스에서SQL
- xcode앱만들기 #swift #uikit
- 자바SQL
- xcode #swift공부
- 오라클데이터수정자바
- xcode 깃오류
- jwt #세션 #토큰 #로그인유지 #java
- jdbc값검색
- 이클립스에서sql데이터삽입
- 자바SQLUPDATE
- 이클립스커넥션아이디오류
- JDBCUPDATE
- replaceall여러문자 #javareplaceall
- JDBC수정
- jdbc셀렉트
- jdbc
- jdbcselect
- JDBC데이터삽입
- xcode #swift #ios앱만들기 #swift배열
- 이클립스에서오라클데이터수정
- jdbcconnection_id오류
- xcode앱만들기 #xcode기초
- 이클립스에서오라클데이터
- JDBCinsert
- swift화면전환
- 이클립스로오라클데이터출력
- Today
- Total
Yim-HaEun
[JDBC] 오라클에 SELECT문을 사용하여 데이터 출력하기 본문
모든 데이터를 가져오는 것과 원하는 데이터를 골라 가져오는 방법이 있습니다.
1. 모든 데이터 출력하기
주로 여러행을 검색하는데 사용 조건없이 데이터베이스의 모든 데이터를 가져오는 경우
WHERE 절을 사용해서 일치하는 모든 행을 검색할 때 사용
결과는 주로 리스트나 배열 컬렉션 형식으로 반환
여러개의 결과를 반환할 수 있고, 결과가 없을 수 있음
일단 먼저 맨 처음 시작할때 드라이버 연결을 해줍니다.
SQL의 url, user,password 가져오기
저는 산리오 친구들 데이터를 만들어 놓은걸 예시로 가져올게요.
제가 만든 sanriofriends 테이블입니다.
connection 을 사용하여 url,username,password를 연결해준다.
Connection위에 마우스를 올리고 import 해줍니다.
sql import문이 생성된걸 확인하시고
DriverManager ~~ 빨간부분에 마우스를 갖다 대
try - catch 문을 넣어줍니다.
이제 try문 안에서 코딩을 계속 할게요
String selectQuery = "셀렉트 문";
여기에 ORDER BY나 WHERE절 추가 가능합니다.
sanriofriends라는 테이블의 모든 자료 검색(출력)
PreparedStatement 사용해 sql 쿼리를 실행할 준비
PreparedStatement selectState = con.prepareStatement(selectQuery);
PreparedStatement도 마우스 갖다대 java.sql import하기
ResultSet result = selectState.executeQuery();
ResultSet executeQuery() 메서드를 호출하여 SQL SELECT 쿼리를 실행하고
그 결과를 ResultSet 객체에 저장,
ResultSet 결과 집합을 표현하는 객체
ResultSet에 담은 결과 집합을 next()를 사용하여 확인
while문을 사용하여 덩어리째 가져오는 자료들을 하나씩 출력해줄겁니다.
예시)
while(result.next()){ //로 표기
xxx 변수명 = result.getxxx("DB테이블에서 불러올 행 작성");
int accountID = result.getInt("account_id");
값을 추출할 때 예약어에 맞는 값을 넣고 추출
출력문 작성
2. If문을 활용해 원하는 값만 출력하기
주로 단일 행(레코드) 검색하는 데 사용
일반적으로 WHERE 절을 사용해서 조건을 지정하고
결과로 단일 객체나 레코드를 반환
결과가 없거나 여러 결과가 나오는 경우 첫번째 결과만 주로 반환
주요키(PRIMARY KEY) 값으로 검색하거나 고유한 결과를 필요로 하는 경우에 사용
위에서 했던 것과 같이 값을 넣어줍시다.
빨간 줄이 뜨는 문장에 마우스를 갖다대 try - catch 문 넣어주기
String selectQuery = "SELECT * FROM sanriofriends WHERE s_name in (?,?)";
PreparedStatement selectState = con.prepareStatement(selectQuery);
String[] targetAN = {"포차코","한교동"};
selectState.setString(1, targetAN[0]);
selectState.setString(2, targetAN[1]);
where 절 해석을 해보자면
s_name이라는 컬럼에서 '포차코'라는 값을 가진 *모든 데이터와
'한교동'이라는 값을 가진 모든 데이터를 가져오는 겁니다.
(?,?) 과 selectState.setString(1,targetAN[0]);
은 물음표의 자리를 나타냅니다.
첫번째 물음표 자리에 targetAN[0]의 값인 '포차코'를 넣어주겠다는 뜻.
바로 아래에 ResultSet 메서드를 넣고
if문을 사용합니다.
while문 작성
실행해보면
데이터 출력이 됩니다.
'SQL & JDBC > JDBC' 카테고리의 다른 글
[JDBC] CONNECTION_ID 오류 (0) | 2023.10.24 |
---|---|
[JDBC] 이클립스에서 UPDATE문을 사용하여 오라클 SQL 데이터 수정하기 (0) | 2023.10.19 |
[JDBC] 이클립스에서 INSERT문을 활용하여 오라클에 SQL 데이터 삽입하기 (2) | 2023.10.19 |
[JDBC]자바로 JDBC 연결 및 SQL 데이터 가져오기 (2) | 2023.10.17 |