2020. 4. 17. 11:40
testmember의 로우 내용을 수정하는 예제
public static void select(String url, String user, String pass, int id) {
PreparedStatement ps = null;
try{
Connection con = DriverManager.getConnection(url,user,pass);
String sql = "select * from testmember where id=?"; // 찾아서 성공하면 1나옴
ps = con.prepareStatement(sql);
ps.setInt(1, id);
ResultSet rs = ps.executeQuery();
System.out.println("수정하고자 하는 "+id+"의 정보입니다.");
while(rs.next()) {
System.out.println(rs.getInt(1)+"\t"+rs.getString(2)+"\t"+rs.getInt(3)+"\t"+rs.getString(4)+"\t"+rs.getString(5));
}
} catch(SQLException e) {
System.err.println("오라클 쿼리문 조회실패111ㅜㅜ");
System.exit(0);
}
}
public static void select(String url, String user, String pass, String name) {
PreparedStatement ps = null;
try{
Connection con = DriverManager.getConnection(url,user,pass);
String sql = "select * from testmember where name=?"; // 찾아서 성공하면 1나옴
ps = con.prepareStatement(sql);
ps.setString(1, name);
ResultSet rs = ps.executeQuery();
System.out.println("수정하고자 하는 "+name+" 학생의 정보입니다.");
while(rs.next()) {
System.out.println(rs.getInt(1)+"\t"+rs.getString(2)+"\t"+rs.getInt(3)+"\t"+rs.getString(4)+"\t"+rs.getString(5));
}
} catch(SQLException e) {
System.err.println("오라클 쿼리문 조회실패111ㅜㅜ");
System.exit(0);
}
}
public static void update(String url, String user, String pass, int id) {
Scanner sc = new Scanner(System.in);
try {
Connection conn = DriverManager.getConnection(url,user,pass);
PreparedStatement ps = null;
System.out.println("수정할 월급을 입력해주세요");
int salary = sc.nextInt();
System.out.println("수정할 이메일 입력해주세요");
String email = sc.next();
System.out.println("수정할 전화번호를 입력해주세요");
String tel = sc.next();
String sql = "update testmember set salary=?, email=?, tel=? where hakbun=?";
ps = conn.prepareStatement(sql);
ps.setDouble(1,salary);
ps.setString(2, email);
ps.setString(3, tel);
ps.setInt(4, id);
int res = ps.executeUpdate();
if (res > 0) {
System.out.println("아이디 " + id +"의 로우(레코드)를 수정하였습니다. ");
}else {
System.out.println("아이디 " + id +"의 로우(레코드)수정에 실패했습니다. ");
}
} catch (SQLException e) {
System.err.println("오라클 쿼리문 조회실패ㅜㅜ");
System.exit(0);
}
}
public static void update(String url, String user, String pass, String name) {
Scanner sc = new Scanner(System.in);
try {
Connection conn = DriverManager.getConnection(url,user,pass);
PreparedStatement ps = null;
System.out.println("수정할 월급을 입력해주세요");
int salary = sc.nextInt();
System.out.println("수정할 이메일 입력해주세요");
String email = sc.next();
System.out.println("수정할 전화번호를 입력해주세요");
String tel = sc.next();
String sql = "update testmember set salary=?, email=?, tel=? where name=?";
ps = conn.prepareStatement(sql);
ps.setDouble(1,salary);
ps.setString(2, email);
ps.setString(3, tel);
ps.setString(4, name);
int res = ps.executeUpdate();
if (res > 0) {
System.out.println("이름 " + name +"학생 의 로우(레코드)를 수정하였습니다. ");
}else {
System.out.println("이름 " + name +"학생 의 로우(레코드) 수정에 실패했습니다. ");
}
} catch (SQLException e) {
System.err.println("오라클 쿼리문 조회실패ㅜㅜ");
System.exit(0);
}
}
public static int flagIn() {
Scanner sc = new Scanner(System.in);
System.out.println("수정에 사용할 기준을 선택해주세요! (아이디는 1, 이름은 2를 입력해주세요~)");
int flag = sc.nextInt();
return flag;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("드라이버 등록성공");
}
catch(ClassNotFoundException e)
{
System.out.println("드라이버 등록실패");
}
Connection con = null;
String url = "jdbc:oracle:thin:@127.0.0.1:1521:xe";
String user ="";
String pass = "";
try {
con = DriverManager.getConnection(url,user,pass);
System.out.println("오라클에 로그인(접속) 성공!!");
}catch(SQLException e)
{
System.err.println("오라클에 로그인(접속) 실패 ㅜㅜ");
System.exit(0);
}
PreparedStatement ps = null;
String sql ="";
int flag = 0;
boolean check = true;
while(true) {
flag = flagIn(); //원하는 로직 입력하기
if(flag == 1) {
while(check) {
System.out.println("수정하고자 하는 직원의 아이디를 입력해주세요~");
int id = sc.nextInt();
//select로 체크
try {
sql = "select id from testmember";
ps = con.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while(rs.next()) {
if(rs.getInt(1)==id) {
select(url,user,pass,id);
update(url, user, pass, id); //수정완료
check = false;
break;
}
}
if(check) {
System.out.println("아이디가 존재하지 않습니다..."); //수정실패
}
}
catch(SQLException e)
{
System.err.println("오라클 쿼리문 조회실패ㅜㅜ");
System.exit(0);
}
}
break;
}else if(flag == 2) {
while(check) {
System.out.println("수정하고자 하는 학생의 이름을 입력해주세요~");
String name = sc.next();
try {
sql = "select name from testmember ";
ps = con.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while(rs.next()) {
if(rs.getString(1).equals(name)) {
select(url,user,pass,name);
update(url, user, pass, name); //수정완료
check = false;
break;
}
}
if(check) {
System.out.println("이름이 존재하지 않습니다..."); //수정실패
}
}
catch(SQLException e)
{
System.err.println("오라클 쿼리문 조회실패ㅜㅜ");
System.exit(0);
}
}
break;
}else {
System.out.println("아이디는 1, 이름은 2입니다. 다시 입력해주세요...");
}
}
}
'jsp,spring,php' 카테고리의 다른 글
커뮤니티 사이트 개발 소스코드 (0) | 2022.02.07 |
---|---|
jdbc)테이블 내용 삭제 (0) | 2020.04.17 |
jdbc)테이블 내용 삽입 예제 (0) | 2020.04.17 |
jdbc)테이블 조회 예제 (0) | 2020.04.17 |
jsp)로그인 서비스 구현 - 2 (0) | 2020.01.03 |