python今回はPythonからMySQLを扱ってみました。MySQLとは世界で最も普及している、オープンソースデータベースMySQL公式より言わずもがな。当ブログもデータの管理はMySQLです。MySQLサーバが稼働しているのだから、データベースを作って、Pythonでデータの入出力を実験してみました。次のとおり、ユーザ、データベース及びテーブルを作っておきます。itemListの構造は次のとおり。PA-APIで入手した、Amazonの商品データを記録することを想定した構造です。レスポンス全部(PA-API)データベースを一括設定するために、次のファイルにSQL文を書いておきます。text;MySQLにrootでログインして、mysqlSetup.sqlを読み込ませれば、ユーザ作成とデータベースが完成。Connector/PythonMySQL本家によるPythonライブラリです。Connector/Pythonの基本的な使い方です。cursorを介してデータベースをいろいろ操作。cursorを介してデータベースをいろいろ操作。接続を切るINSERTASINがABCDEFGHUJ、Priceが12345である商品データをテーブルに追加(INSERT)してみます。SQL文をただ投げているだけですね。テーブルのデータを書き換える場合は、commit()を実行する必要があります。12345)')db.commit()プレースホルダを使って、ただのSQL文からの脱却。data)db.commit()辞書と内包表記を使ったら少しはPythonぽくなった。この書き方ならば、辞書dataの要素が増減しても、それに応じたSQL文が実行されます。data)db.commit()SELECTテーブルからデータを取り出すSELECTの使い方。execute()及びfetchall()で、条件に一致するデータ(タプル型)のリストが得られます。(テーブルitemListには1個のデータしか記録されてないので、リストの長さは1)fetchall()の代わりにfetchone()で、データを1個1個取り出すことも可能。(繰り返しますが、今のところテーブルitemListには1個のデータしかない)データがタプル型なので、何番目の要素がどのカラムの値なのかを気にする必要があります。条件にヒットしたデータをリストで取り出す。条件にヒットしたデータをリストで取り出す。None)タプル型の代わりに辞書型でデータを取り出すことも出来ます。INSERT同様にプレースホルダが使えます。テーブルのカラム名が辞書のキーに対応するので、わかりやすくて便利です。...}DELETEデータの削除(DELETE)の使い方です。まとめMySQLへの接続やデータ操作がPythonで実行できました。execute()を使ってMySQLサーバにSQL文を投げるだけなので、データベースを操作するどんなコマンドでも実行できます。SQL文をどう組立てるかが工夫のしどころ。プレースホルダと内包表記でSQL文を付く手見たけど、もっとカッコいい書き方があるかも。画像ファイルサイズを変更。Automatorでクイックアクション化。ファイル名をハッシュ値でリネーム。Automatorでクイックアクション化。BottleでWebSocketを試す。コメントをキャンセルメールアドレスが公開されることはありません。上に表示された文字を入力してください。コメントデータの処理方法の詳細はこちらをご覧ください。画像ファイルサイズを変更。Automatorでクイックアクション化。ファイル名をハッシュ値でリネーム。Automatorでクイックアクション化。DockerでHTTPS-PORTAL使うとHTTPSサイトの構築が超絶簡単DockerでWordPress+MySQL+phpMyAdmin+WSGIのプラクティスBB-8のプラモデルを作りました。プラモデル作りを再開。BottleでWebSocketを試す。fastenersで排他ロックを試す。Blue-black.ink。