スキップしてメイン コンテンツに移動

Qt Creator でデータベースソフトを作る!第1回

前回の記事でエクセルでサンプル管理ソフトを作成した。そこで、次はQtを利用したサンプル管理ソフトを作ってみようと思いたった。
まず、ソフトのインストールから説明する。

ソフトのインストール

インストールするソフトは以下の通りです。
  1. Fedora20
  2. MySQL
  3. Qt-5.3.1
  4. Creator 2.3
但し、Creatorは最新のものを使うが、はパッケージ化されていないので、オフィシャルサイトよりダウンロードをしてインストールする。

MySQL以外はインストール画面に従っていく又はyumコマンドを実行すればインストールは完了するので割愛します。

MySQLのインストール

  1. yum install community-mysql*  を実行する。
  2. systemctl start mysqld.servce及びsystemctl enable mysqld.serviceを実行する。これでサービスが開始され、起動時サービスが起動されます。
  3.  /etc/my.cnfを編集し、サービスを再起動させます。
    innodb          InnoDBストレージエンジンで起動させます。
    inno-file-per-table     既存の保存先を利用する場合必要
    character-set-server=utf8          Unicode UTF8を利用する場合必要
  4. MySQLユーザーがrootでMySQLにログインし、パスワードを設定する。
    mysql -u root -p
    password:PassWord

    select user,host,password from mysql.user   ユーザー名とホスト名とパスワード
                                                                                       を確認する。
    set password for UserName@"HostName"=password("PassWord");
    パスワードを設定する。
  5. 続いて管理者ユーザーを作成する。
    grant all privilege to *.* to UserName@"HostName" identified by "PassWord" with grant option;
    granto optionをつけることでユーザー追加及び削除等が可能になる。
  6. ログアウトする。

Creatorを使ってみる

早速、ウィジェットを作成してみることにしました。ユーザーログインのウィンドウを作り、SQLでユーザーログインができれば閉じるプログラムを作りました。
MySQLコマンドを実行するコードは別のクラスファイルに記述し子クラスにしました。Widgetが 実行され、ログイン画面が出ると「ログイン」ボタンをクリックすると、データベースに問い合わせし、成功すれば閉じるというプログラムです。

void Widget::on_pushButton_clicked()
{
    if (MySQL.Login() == "True"){
        this->close();
    }
}

上記のコードで実行すると
no match 'operator ==' (operand types are 'Cmd_MySQL' and 'const char [5]')
とでてしまい、実行できない状態になってしまいました。

なぜ、どこが悪いのかわからないため、作業がストップしています。
もう少しインターネットなどで探ってみようと思います。
ソースコード: https://drive.google.com/file/d/0B0oSFZs-dbRZRDFxUGpKS05GM1k/edit?usp=sharing

コメント

このブログの人気の投稿

特定化学物質及び四アルキル鉛等作業主任者の資格を取得しました!

5・6日に特定化学物質及び四アルキル鉛等作業主任者の技能講習に行きました。16日に修了証が郵送されてきて、とりあえず良かったです。 実をいうと、修了試験に合格しているかは不安だったんです。 法関連の講義が、前回受講した有機溶剤作業主任者の講義をしていた人だったので、内容も類似点が多く、正直ほとんど寝ていました。 そういうこともあり、最初の問題は、すごく焦りました。 4問正しい答えであれば万々歳といった感じだったんです! まあ、とりあえず取得できて本当に良かったです。

有機溶剤作業主任者の技能講習に合格!

10日に有機溶剤作業主任者技能講習修了証が郵送されてきました。とりあえず、合格してよかったです。 講義中、どういった問題がでるかを言っていたので、修了試験は、めっちゃ簡単でした。 合格率95%以上はうなずけます。

晴れていたのに・・・・・

今日、晴れていたのですが、完全 ノックアウト 状態でした。 前日の残業が響いているのかな・・・・・ 朝6時半には起床していたのですが、居間の座椅子に腰掛けたら、いつの間にか寝てしまいました。 気づいたら、 8時半! ちょうど朝食ができていたので、食事したのですが、体が重く、倦怠感があり、とても動ける状態にありません。 気持ちもあまり良い状態ではなく、少し沈む感じです。休日うつなのでしょうか? ここ最近続いているのですよね・・・・・ あまり良い状態ではありません。 ということで、お出かけはやめて、一日中ひきこもることにしました。 お出かけといっても、サイクリングなんですけどね。 久々に多摩湖や狭山湖を周回しまくって100km走行したいと思っていただけです。 ちなみにひきこもって何するの? というと、ネットゲームをやりまくりです。 インペリアルサガで一日消費することにしました。 さすがにメンタルが安定していないとはかどらないものですね・・・・ ここまでやりたいと思っていたことが半分ぐらいしかできていない。 今日はダメダメな一日でした。 今日の午後の空模様