MySQL DB削除
DB一覧表示、削除コマンドについて
カリキュラムを復習するにあたりpictweetのデータベースが邪魔だっため削除した。
削除、編集で使うSQLのコマンドをまとめてみる
mysqlへ接続
SQLを実行するために、まずはデータベースへ接続をする必要がある
mysql -u root
データベース一覧を表示
以下のコマンドを入力
mysql> show databases;
データベースの削除
下記のコマンドを打てば、データベースを削除できる
mysql> drop database 削除したいデータベース名;
[注意]ハイフンのついたデータベースを削除する場合
例えば、hello-app_development
というデータベースを削除したい場合、上記のコマンドを参考に削除しようとすると、エラーがでます。
mysql> drop database hello-app_development; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-app_development' at line 1
なので、ハイフンのついたデータベースを削除する場合は、バッククォート(`)でデータベース名を囲んであげる必要があります。
mysql> drop database`hello-app_development`; Query OK, 0 rows affected (0.02 sec)
削除できたか確認方法
mysql> show databases;
上記のコマンドでデータベースを一覧で表示させると確認できます。
参考URL
JSON形式について
目的
理解できていなかったためまとめてみる
ルール1:APIの応答は、JSON形式で返却されることが一般的
JSON形式(記法)のルール
- キーとバリュで形成されている→キー・バリュー型(追記190430)
- 全体が{} で括られる
- 要素→「"要素名":値」で定義される
- 配列的要素は、[]で括られる
- まとまった領域は{}で括られる
{ "num":2, "score":[ { "kokugo": 90, "suugaku": 80, "eigo": 75, "rika": 85, "shakai": 80, }, { "kokugo": 55, "suugaku": 30, "eigo": 95, "rika": 15, "shakai": 75, } ] }
ルール2:JSONはプログラム内ではオブジェクトである
let aClass{ num: 2, score: [ { kokugo: 90, suugaku: 80, eigo: 75, rika: 85, shakai: 80 }, { kokugo: 70, suugaku: 90, eigo: 65, rika: 25, shakai: 55 } ] } // 1人目の国語の成績を取得 // aClass["score"][0].kokugo // または // aClass.score[0].kokugo
外部からjsonのデータを取得する場合
ルール3:JSONは「parce」でオブジェクト化、「stringify」でテキスト化して扱える
let req = http.get("http://~", (res) => { let chunk = ""; res.on("data", (c) => { chunk = c; }); res.on("end", () => { let response = JSON.parse(chunk); // 取得したら、parse console.log("response: " + JSON.stringify(response)); // stringifyでテキスト化 let address = response["results"][0]; let address1 = address["address1"]; // parseすると、オブジェクトとして扱える agent.add("住所: + address1") }); }); // APIの応答 { "message": null, "results":[ { "address1": "東京都" "address2": "千代田区" "address3": "千代田" "kana1": "トウキョウト" "kana2": "チヨダク" "kana3": "チヨダ" "prefcode": "13" "zipcode": "1000001" } ], "status": 200 }
外部からAPIを呼び出すときはJSON.parseを使う→オブジェクト形式に変換する
JSONからもらってきたdataをオブジェクトとして使うことができる
もしテキストの情報として使いたいときは?
→JSON.stringifyを使う(ログを出力したいときに便利)
参考URL qiita.com
ER図 ツール
Lineのチャットボットを作る流れ。(備忘録)
ボットを作る上での共通する箇所、流れをまとめてみた
- アカウント名作成、業種選択
- 自動応答メッセージの編集
- アカウント登録→messaging API設定
- プロバイダー登録→自分を選択→messagingAPI利用設定完了
- オプションは変更しない→LINE Developersで設定する
- アクセストークン再発行
- 設定が読み込まれるまで時間がかかる→ログアウト→時間を置いてログイン
- webhook送信設定→利用する
- Dialogflowに移動
- agent作成
- integrations→lineと連携
- 以下3つLINEから取得
- channel ID入力
- channel secret
- アクセストークン
- webhook URLをlineに貼り付け→(https://)を外す
- start ボタンを押す
接続完了
ここまでがインテントの作成までの設定事項
アルゴリズム入門者向けのイベントに参加した
イベント概要
- 入門者向け
- アルゴリズムとは?
アルゴリズムを学ぶべき理由とは?
まとめた
自分の解釈
・アルゴリズムという型を身につるけこと
・型ありきで考えていけば自然と原因が絞られてくる
・解決方法もパターン化できるから開発期間を短縮できますよ
というメッセージと解釈した。
・課題解決のためのテンプレートとしてアルゴリズムにメリットがあると感じた
自分の中でのイメージ
・言語を効率的に早く書く手段→それぞれの言語のテンプレート、ツール
・無駄なく、早く、解決する手段→アルゴリズム
料理で捉え直してみる(注意:個人的な考えです)
作業スピードと段取りの違いで腑に落ちた。
→段取り=アルゴリズムかもしれない
まとめ
・アルゴリズムを使うメリットは料理の作り方(手順、段取り、効率的な作り方、無駄を省く、)と似ている箇所があり理解できた。
・むしろ先人が残した知恵を使えることに非常にメリットを感じた
・アルゴリズムにはたくさんの種類がありそれぞれにメリット、デメリットある
・どんな状況で使うべきかを知ることが大切だと感じた。