자바
자바 - JDBC 드라이버(중간 연결) - MySQL
MySQL 용 JDBC 드라이버: https://dev.mysql.com/downloads/connector/j/
- 프로젝트에 lib폴더를 만들고 다운받은 jar파일을 넣기
- 프로젝트 오른쪽 클릭 - Properties - Java Build Path - Add JARS... - lib폴더에 넣은 jar파일 추가
MySQL에서 사용하려는 인스턴스, 데이터베이스 확인 ->
"jdbc:mysql://localhost:3306/memo"
public static void main(String[] args) {
try {
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/memo","유저이름","패스워드");
Statement statement = connection.createStatement();
statement.executeUpdate("insert into account values (3,'Jack')");
ResultSet resultSet = statement.executeQuery("select * from account");
while(resultSet.next()) {
System.out.println(resultSet.getString("name"));
}
PreparedStatement preStatement = connection.prepareStatement("insert into account values (?,?)");
preStatement.setInt(1,4);
preStatement.setString(2,"Joe");
preStatement.executeUpdate();
}
catch (Exception e) {
e.printStackTrace();
}
finally {
if(resultSet != null){
try{
resultSet.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}
}
- Statement: SQL문 사용
- statement.executeUpdate: 값을 변경하는 sql 사용시 / 변화를 준 행 수 반환
- statement.executeQuery: 값을 가져오는 sql 사용시 / ResultSet 객체 반환
- PreparedStatement: SQL문에 포매팅을 할 때 사용
- SQL문 안에 포매팅할 변수를 ?로 넣기
- preStatement.setInt(변수 번호, 값)
- preStatement.setString(변수 번호, 값)
- 그 후 preStatement.executeUpdate 또는 preStatement.executeQuery
resultSet.isBeforeFirst(): 특정 값이 쿼리한 데이터베이스에 이미 있는지(true) 없는지(false) 확인할 때
alert.setcontenttext: Alert 객체(Alert 창)의 문구 설정
javafx Initializable: fxml파일을 컨트롤하는 모든 Controller 클래스가 implements해야 하는 것. root가 처리된 후 Controller를 초기화.
버튼.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
~
}
});
파이썬
자바 - 커넥터 (중간 연결) - MySQL
또는
pip install mysql-connector
mysql-connector이 설치된 폴더를 프로젝트의 Lib - site-packages 안에 넣기
import mysql.connector
db = mysql.connector.connect(
host = "localhost",
user = "유저 이름",
passwd = "패스워드"
)
mycursor = db.cursor();
mycursor.execute("SQL문");
mycursor.execute("insert into Account (id, name) values (%d,%s)",(1,"Jack")) # 포매팅 사용시
db.commit() # 값을 변경하는 SQL문 사용시
for x in mycursor: # 가져온 값을 출력
print(x)
accounts = [(2,"Nick"), (3,"James"), (4,"Joe")]
mycursor.executemany("insert into Account (id, name) values (%d,%s)",accounts)
for x, account in enumerate(accounts):
~
current_id = mycursor.lastrowid
~
'자바, 파이썬' 카테고리의 다른 글
[자바, 파이썬] OpenCV (0) | 2022.06.13 |
---|---|
[자바, 파이썬] 서버 - 클라이언트 사용 (0) | 2022.06.05 |
[자바, 파이썬] 기본 문법 (0) | 2022.06.04 |
[자바, 파이썬] Regex 사용 (0) | 2022.06.03 |
[자바, 파이썬] GUI 사용 (0) | 2022.06.02 |