JavaからMySQLを操作するまで
MySQL
参考
- インストール
- ポート解放
とりあえずテスト用データ作成
$ mysql -u root -p # 権限を付与したユーザを作成 mysql> grant all privileges on *.* to 'user'@'%' identified by 'password'; # ログインし直してデータベース作成 mysql> exit; $ mysql -u user -p mysql> create database mydatabase; # ログインし直してテーブル作成 mysql> exit; $ mysql -u user -p mydatabase mysql> create table mytable (id int auto_increment primary key, title varchar(256), body text, updated_at datetime); # レコード作成して終了 mysql> insert into mytable values (null, 'title1', 'body1', current_timestamp); mysql> exit;
Java
参考
- JDBC
- Driverのクラスパス設定
ここまで出来たら実装
public static void main(String[] args) { Connection conn = null; try { conn = DriverManager.getConnection("jdbc:mysql://IPアドレス:ポート番号/mydatabase", "user", "password"); java.sql.Statement stmt = conn.createStatement(); String sql = "select id, title, body from mytable"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { System.out.println(rs.getString("title")); System.out.println(rs.getString("body")); } // このあたりはGCで解放されるがメモリ節約のためclose rs.close(); stmt.close(); } catch (SQLException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } finally { try { if (null != conn) { conn.close(); } } catch (SQLException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } } }
触るだけなんでこんなもんで
はまったところ
上記にある
- ポート解放
- Driverのクラスパス設定
をやってなかったです。