Node-REDとMySQLを使ってシンプルなウェブサイトを作ってみます。
#1. Node−REDフローでMySQLの表からデータを読む
- Node-REDに下記のフローをコピペします
Node-REDでMySQLから読む
[{"id":"46a32e78.28b46","type":"mysql","z":"364c8480.a7f89c","mydb":"9758a03.7a54be","name":"","x":450,"y":100,"wires":[["4e5306bc.5d605"]]},{"id":"50452e49.b6781","type":"inject","z":"364c8480.a7f89c","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":100,"y":100,"wires":[["fbe438e7.e32b28"]]},{"id":"4e5306bc.5d605","type":"debug","z":"364c8480.a7f89c","name":"","active":true,"console":"false","complete":"false","x":610,"y":100,"wires":[]},{"id":"fbe438e7.e32b28","type":"function","z":"364c8480.a7f89c","name":"select文を準備","func":"msg.topic = \"select * from table01;\";\nreturn msg;","outputs":1,"noerr":0,"x":280,"y":100,"wires":[["46a32e78.28b46"]]},{"id":"9758a03.7a54be","type":"MySQLdatabase","z":"","host":"127.0.0.1","port":"3306","db":"DB01","tz":""}]
- 「DB01」と書かれているMySQLノード(オレンジ色)をダブルクリックで開きます
- 「mysqlノードを編集」画面で、「Database:DB01」の右にある鉛筆マークを選択して編集モードにします
- 「MySQLdatabaseノードを編集」画面で、MySQLのユーザー名とパスワードを指定します。デフォルトでデータベース名として「DB01」を指定してあるので、使用しているデータベースに合わせて適宜データベース名を変更します。
- 「更新」→「完了」で保存します
- 「デプロイ」を押してNode-REDへ反映させます
- 「DB01」の下に「connected」と表示され、MySQLへ接続していることがわかります
- フロー右端の緑の「Debug」ノード(「msg.payload」と記載)のタブが引き出されていること、画面右端の「デバッグ」タブが選択されていることを確認し、フロー左端の「Timestamp」と表示されているInjectノード(灰色)の左側のタブをクリックしてリクエストを送付し、MySQLの表からデータが読み出されることを確認します。デバッグ出力に出力された「Object」と表示された項目をクリックして展開することでデータが表示されます。