자바 연결 데이터베이스 오류 요약

2355 단어 JavaBREWMySQLJDBCSQL
더 읽 기
어제 첫날 데이터베이스 에 있 는 name 과 같은 줄 을 첫 번 째 줄 에 비어 있 지 않 은 내용 을 두 번 째 줄 이 비어 있 는 대응 위치 로 복사 하 는 작업 을 받 았 습 니 다.

public static void main(String[] args) {
		// TODO Auto-generated method stub
		String driver = "com.mysql.jdbc.Driver";
		String url = "jdbc:mysql://localhost:3306/brew_operation_db?characterEncoding=UTF-8";
		String userName = "root";
		String password = "123";
		ArrayList Imagepath = new ArrayList();
		ArrayList name = new ArrayList();
		ArrayList id = new ArrayList();
		ArrayList ids = new ArrayList();
		try {
			Class.forName(driver);
			Connection conn = DriverManager.getConnection(url, userName, password);
			Statement statement = conn.createStatement();
			String sql = "select * from brew group by name having count(*)>1";
			ResultSet rs = statement.executeQuery(sql);
			while(rs.next()){
				name.add(rs.getString("name"));
				id.add(rs.getInt("id"));
				Imagepath.add(rs.getString("Imagepath")) ;
			}
			rs.close();
			statement.close();
			for (int j = 0; j < id.size(); j++) {
				String sqla = "select * from brew where name = '"+name.get(j)+"' and id <> "+id.get(j);
				Statement statement1 = conn.createStatement();
				ResultSet rs1 = statement1.executeQuery(sqla);
				if(rs1.next()){
					ids.add(rs1.getInt("id"));
				}
			}
			for (int i = 0; i < ids.size(); i++) {
				String sqlb = "update brew set Imagepath = '"+Imagepath.get(i)+"' where id = "+ids.get(i);
				Statement statement2 = conn.createStatement();
				int s = statement2.executeUpdate(sqlb);
			}
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}
		
		
		
	}

코드 가 완벽 하지 않 아서 많은 문제 에 부 딪 혔 습 니 다.가장 어 려 운 것 은 마지막 에 양 형 에 게 물 어 보 는 것 입 니 다.원래 인 코딩 이 었 습 니 다.꼭 기억 하 세 요!String url = "jdbc:mysql://localhost:3306/brew_operation_db?characterEncoding=UTF-8";

좋은 웹페이지 즐겨찾기