MySQL 데이터베이스에 데이터를 삽입하려면 INSERT 명령어를 사용합니다. 기본 문법은 다음과 같습니다.
INSERT INTO 테이블명(컬럼명1, ..., 컬럼명N) VALUES(값1, 값2, ..., 값N);
이 글에서는 Java 프로그래밍 언어를 이용해 MySQL 데이터베이스에 레코드를 삽입하는 전체 과정을 단계별로 살펴보겠습니다.
1단계: MySQL 테이블 생성하기
먼저 데이터를 저장할 테이블을 만들어야 합니다. 아래 쿼리로 InsertDemo 테이블을 생성합니다.
mysql> create table InsertDemo
-> (
-> Id int,
-> Name varchar(200),
-> Age int
-> );
Query OK, 0 rows affected (0.97 sec)2단계: Java 코드로 데이터 삽입하기
테이블 생성이 완료되면, JDBC를 통해 MySQL 데이터베이스와 연결한 후 INSERT 쿼리를 실행하는 Java 코드를 작성합니다.
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Statement;
public class JavaInsertDemo {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (Exception e) {
System.out.println(e);
}
conn = (Connection) DriverManager.getConnection(
"jdbc:mysql://localhost/business", "Manish", "123456");
System.out.println("Connection is created successfully:");
stmt = (Statement) conn.createStatement();
String query1 = "INSERT INTO InsertDemo " + "VALUES (1, 'John', 34)";
stmt.executeUpdate(query1);
query1 = "INSERT INTO InsertDemo " + "VALUES (2, 'Carol', 42)";
stmt.executeUpdate(query1);
System.out.println("Record is inserted in the table successfully..................");
} catch (SQLException excep) {
excep.printStackTrace();
} catch (Exception excep) {
excep.printStackTrace();
} finally {
try {
if (stmt != null)
conn.close();
} catch (SQLException se) {}
try {
if (conn != null)
conn.close();
} catch (SQLException se) {
se.printStackTrace();
}
}
System.out.println("Please check it in the MySQL Table......... ………..");
}
}코드 핵심 흐름 정리
위 코드의 동작 순서는 다음과 같습니다.
① 드라이버 로딩: Class.forName()으로 MySQL JDBC 드라이버를 메모리에 로드합니다.
② 연결 생성: DriverManager.getConnection()으로 URL, 사용자명, 비밀번호를 지정해 데이터베이스에 접속합니다.
③ 쿼리 실행: createStatement()로 Statement 객체를 만들고, executeUpdate()로 INSERT 문을 실행합니다.
④ 자원 해제: finally 블록에서 Statement와 Connection을 반드시 닫아 리소스 누수를 방지합니다.
com.mysql.jdbc.Driver는 구버전 커넥터용 클래스로 현재는 deprecated되었습니다. 최신 MySQL Connector/J 8.x 이상에서는 com.mysql.cj.jdbc.Driver를 사용하는 것이 권장됩니다.3단계: 실행 결과 확인하기
프로그램을 실행하면 아래와 같이 연결 성공 및 데이터 삽입 완료 메시지가 출력됩니다.

실제로 테이블에 레코드가 정상적으로 들어갔는지 확인하려면 SELECT 문을 사용합니다.
mysql> select * from InsertDemo;
실행 결과는 다음과 같습니다.
+------+-------+------+ | Id | Name | Age | +------+-------+------+ | 1 | John | 34 | | 2 | Carol | 42 | +------+-------+------+ 2 rows in set (0.00 sec)
위 결과에서 볼 수 있듯이, Java 프로그램을 통해 두 개의 레코드가 MySQL 데이터베이스에 성공적으로 삽입되었음을 확인할 수 있습니다.