読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

MySQLでテーブル作ったり値を入れたり(伏線)

<スポンサーリンク>

JavaでDBの値を取得する前にMySQLでDBを作成するところから。

1.MySQLでデータベースを作成する

CREATE DATABASE testdb

2.MySQLで使うデータベースを指定する

USE testdb

3.MySQLでテーブルを作成する。
テーブルのイメージはこんな感じ。
なんとなくだけど、株価とかの始値、終値、高値、安値をイメージ。
でも値はめんどくさいからExcelのRAND関数を使って生成した。
小数点以下を四捨五入するために、
「=ROUND(RAND() * 1000,1)」とした。
適当なテストデータ作るのにいいよね。

CODE NAME OPEN HIGH LOW CLOSE
1 hoge 697.7 571.6 92 273.7
2 fuga 644 913.7 776.4 537.8
3 foo 414.6 659.8 216.1 473.7
4 bar 911.7 427.5 951.2 555.1
5 boo 990.1 810 245.1 206.4
6 hello 647.8 238.5 202.7 693.7
7 world 459.4 852.3 19.5 979.4
8 wata 366.5 468.6 100.3 619.3
9 mi 9.5 445.6 102.6 211.6
10 black 635.7 584.2 909.3 471.5

まずはテーブルの作成

CREATE TABLE STOCK_VALUE(CODE VARCHAR(10), NAME VARCHAR(30), OPEN INT, HIGH INT, LOW INT, CLOSE INT);

4.テーブルが作成されているか確認する

mysql> SHOW TABLES;
+------------------+
| Tables_in_testdb |
+------------------+
| stock_value      |
+------------------+
1 row in set (0.00 sec)

なお、テーブルの構造を確認するには、

DESC stock_value

のように入力するといい。

5.値を入力する。
こんな感じで用意した値のINSERT文を作る。

INSERT INTO stock_value VALUES('1','hoge',508.6,253.9,725.6,595.9);

これもExcelの関数を使う。
「= "INSERT INTO stock_value VALUES('"&B3&"','"&C3&"',"&D3&","&E3&","&F3&","&G3&");"」
こんな感じで関数を使えば、モノの5分で10行でも100行分でもINSERT文は作れる。

6.入力した値を確認する。

mysql> select * from stock_value;
+------+-------+------+------+------+-------+
| CODE | NAME  | OPEN | HIGH | LOW  | CLOSE |
+------+-------+------+------+------+-------+
| 1    | hoge  |  509 |  254 |  726 |   596 |
| 2    | fuga  |  496 |   44 |  245 |   279 |
| 3    | foo   |  177 |  350 |   16 |   997 |
| 4    | bar   |  670 |  903 |  472 |   743 |
| 5    | boo   |  244 |  188 |  258 |   628 |
| 6    | hello |  983 |  662 |  500 |   681 |
| 7    | world |  504 |  597 |  723 |   140 |
| 8    | wata  |  565 |  904 |   78 |   974 |
| 9    | mi    |  648 |  156 |  998 |   986 |
| 10   | black |  285 |  179 |  814 |   162 |
+------+-------+------+------+------+-------+
10 rows in set (0.00 sec)

しまった、小数点以下が消えている。
DOUBLE(桁数, 小数点以下の桁数)
でやるべきだった。が、今回やりたいことはそこじゃないので、一旦スルー。

JavaでDBの値を取得する

この辺のサンプルを作るための伏線。
とりあえずキリがいいので、続きは次の記事で。

参考文献

基礎からのMySQL 改訂版 (プログラマの種シリーズ SE必修! )

基礎からのMySQL 改訂版 (プログラマの種シリーズ SE必修! )

感謝のプログラミング

今回で感謝のプログラミングは【474時間目】
10000時間まで、あと【9526時間】