MariaDB – DEFAULT CURRENT_TIMESTAMP

WordPressのプラグイン制作、なかなか手ごわいです。独自の書き方を学ばないといけないので、慣れるまで調べることが非常に多いです。

WordPressはデフォルトでjQueryが読み込まれるのですが、そのバージョンが1.12.4でとても古いのです。今後、jQuery依存のライブラリを利用するときに、バージョンの問題で使えないといったことが起こると困るので、最新のものを読み込もうとしたのですが、そのためにはまず古いものを読み込まないという処理をしなければなりません。

たったそれだけのことでも上記のような感じで、独自の関数をいくつか利用して書かなければならないのです。これが本当にわけがわからない。

WordPress Codex 日本語版

一応、リファレンスも用意されているのですが、どこになんの項目があるのか分かり辛い上に、解説が難解で理解するまでに時間がかかるのです。

プラグインをサクッと完成させてから、Game Usersの開発も進めていこうと思っていたのですが、世の中そんな簡単には行かないもんですね。作っているうちに追加したい機能も増えてきたので、当初思ってたよりずっと時間がかかってしまうかもしれません。

MariaDB 日時のデフォルト値


プラグインで使うデータベースのテーブルを作成するコードは以下になるのですが、これを書いているときに、便利な日時のデフォルト値の設定方法を知りました。

datetime_renewal DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL

データベースの日時のデフォルト値をこのように設定しておけば、Updateするだけで自動的に日時が更新されることを知って、ちょっとしたショックを受けました。今までデータベースを更新するたびに 0000-00-00 00:00:00 形式で日時を作成してから保存してたのに、あの手間はなんだったんだという。

すごく便利なので、みなさんもぜひ使ってみてください。


追記: 記事を書いてすぐに、これってもしかして新しい機能なんじゃないかと気になって調べてみたところ、MySQL5.6.5からの機能でした。またMySQLが古い環境だと、DEFAULT CURRENT_TIMESTAMPが2つあるとエラーが出るようなので、どのみち上に挙げたSQL文は使えません。

公式によるとWordPressの推奨環境は、MySQL 5.6 / MariaDB 10.0以上ですが、MySQL 5.2.4でも動くようです。プラグインは環境が様々なので、ちゃんと考えてコードを書かないとダメですね。

 

プラグインの設定画面

プラグインの制作は設定画面を表示するところまで来ました。Bootstrapのタブを利用しています。これから設定画面の中身を作っていきます。

XAMPPの設定方法-3 データベース

XAMPPのApacheとPHPの設定が終わりましたので、次はデータベースの設定を行います。

MariaDB / MySQL(データベース)の設定


エクスプローラーでCドライブを開き、その中のxamppフォルダを開いてください。そして以下のフォルダを順番に開いていって、my.ini というファイルを見つけてください。

mysql(フォルダ) > bin(フォルダ) > my.ini(ファイル)

my.ini ファイル

my.ini をメモ帳またはエディターで開きましょう。

 

my.ini をエディターで開いたところ

my.ini も英語だらけですが、Apache & PHP の設定と同じで、必要な部分を検索して書き換えるだけで設定は終わります。

メモ帳やエディターの画面でキーボードの Ctrl(コントロールキー)+ F(エフ)を押して検索ウィンドウを開いて、必要な部分を検索しながら、以下のように書き換えてください。

#を3つ削除するだけです。

書き換えが終わったら忘れずに保存しましょう。

XAMPPのコントロールパネルを使う


次にXAMPPに用意されているコントロールパネルを使ってみましょう。エクスプローラーでCドライブを開き、その中のxamppフォルダを開いてください。そして xampp-control.exe というファイルを探してください。それがコントロールパネルの起動ファイルになります。

 

xampp-control.exe

まだ起動はしないで xampp-control.exe にカーソルを合わせ、右クリックをしてみてください。するとメニューが現れますので、そこからプロパティを選んでください。

 

xampp-control.exe のプロパティ

こういうウィンドウが表示されますので、上のタブから互換性を選んでください。

 

xampp-control.exe のプロパティ 互換性タブ

管理者としてこのプログラムを実行するにチェックを入れてOKをクリックしてください。これはなにを設定していたかというと、この xampp-control.exe をダブルクリックしたときに、毎回管理者として実行するように設定しています。

なぜそうする必要があるのかというと、環境によって Apache やデータベースが正常に起動しないことがあるのですが、管理者として起動した場合はそういう問題が起こらないためです。

xampp-control.exe をダブルクリックして起動してみましょう。

 

XAMPPのコントロールパネル

ユーザーアカウント制御の画面が出ると思いますので、はいを押してください。するとコントロールパネルが起動されます。次はコントロールパネル上で、Apacheと書かれている部分の右側にある Start をクリックし、続けてMySQLと書かれている部分の右側にある Start をクリックしてみましょう。

画像のように緑色の四角で文字が囲まれると、Apache とデータベースの起動が正常に成功したことになります。

これから開発を進めていく時は、このコントロールパネルを使うことになりますので、xampp-control.exe のファイルの場所は覚えておきましょう。デスクトップにショートカットを作ったり、ランチャーソフトに登録すると起動しやすくなるのでおすすめです。

MariaDB / MySQLのパスワードを設定


ここから少し難しくなるのですが、コマンドプロンプトを使ってデータベースのパスワードを設定します。

コントロールパネルの右側 Shell と書かれている部分をクリックしてください。

コントロールパネルの Shell

ここをクリックするとコマンドプロンプト(黒い画面)が立ち上がります。次にその画面で mysqladmin -u root password と入力してキーボードの Enter を押してください。

コマンドプロンプトに入力した状態

New password:
Confirm new password:

Enter を押すと、このように表示され、パスワードの入力を求められるので2度同じパスワードを入力して Enter を押してください。ここで入力するパスワードは、今後、あなたが開発するプログラムからデータベースを利用するときや、 phpMyAdmin (データベース管理ソフト)でログインするときに必要になりますので、忘れないようにしてください。

これでデータベースの設定が完了しました。次は phpMyAdmin の設定を行います。

XAMPPの設定方法-4 phpMyAdmin

XAMPP インストール・設定 関連記事