HTAは、IEがあれば、何もいらない
とはいえ、何らかのデータベースは必要です。
読書履歴管理システム(以下、BOOKLOG)では、お手軽 MariaDB(MY SQLですが)を使っていますが、
それも、まあ、設定が必要なので、ちょっとした、障壁ではありますね。
さてさて、今回プライベートで、PCを変えたので,
BOOKLOGの移植をやってみました。
まとめながらなので、2時間くらいかかりましたが
(ODBC設定で上手くいかなかったのもあり…)
最短なら、小一時間もあれば・・・出来なくはないかもしれなくはない・・・(汗)
↓以下がその手順です。
参考:WindowsにMariaDBをインストールする手順
https://www.trifields.jp/how-to-install-mariadb-on-windows-2440
①ファイルのダウンロード
MariaDBのダウンロードサイトを開く。
https://downloads.mariadb.org/
②Download 10.3.13 Stable Now! のボタンを押す。(数字は、最新で変わります)
安定板であるStableを選択した方が良いとのこと。
③インストールファイルを選択
32bit版と64bit版の違いは、インストールするPCに依る。
ちなみに、僕は、mariadb-10.3.13-winx64.msi を選択。
名前など入力する画面に切り替わるが、入力しなくても、ダウンロードは開始する。
後で必要なので、ODBCのドライバーもダウンロードしておく
MariaDB Connector/ODBC *.* Series から、
僕は、
MariaDB Connector/ODBC 3.1.0 Windows Installersを選択
(32bit版でないとダメかも…)
④インストールファイルを実行
mariadb-10.3.13-winx64.msi をクリック
⑤セットアップ画面で、「Next」をクリック
⑥「I accept the terms in the License Agreement」にチェックを入れ、「Next」をクリック
⑦カスタムセットアップ画面で、「Next」をクリック
⑧rootのパスワードを設定、「Use UTF8 as default server’s character set」にチェックし
「Next」をクリック
⑨デフォルトインスタンスのプロパティ画面は、そのまま「Next」をクリック
⑩利用情報送信確認画面は、チェックを入れずに「Next」をクリック
⑪「Install」をクリックしてインストールを開始
⑫インストールが完了したら、「Finish」をクリック
⑬一緒にインストールされた、HeidiSQLを起動
新規で、パスワード:を入力し名前を付けてセッションを保存
⑭test を選択し、以下のSQL をクエリに貼り付けて実行
CREATE TABLE `booklog` (
`isbn13` VARCHAR(13) NOT NULL COLLATE 'utf16_unicode_520_ci',
`isbn10` VARCHAR(10) NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
`bookname` VARCHAR(50) NOT NULL COLLATE 'utf16_unicode_520_ci',
`author` VARCHAR(25) NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
`publisher` VARCHAR(25) NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
`genre` VARCHAR(25) NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
`issuedate` DATE NULL DEFAULT NULL,
`getdate` DATE NOT NULL,
`readdate` DATE NULL DEFAULT NULL,
`ownership` TINYINT(1) NULL DEFAULT NULL,
`purchase` INT(11) NULL DEFAULT '0',
`library` VARCHAR(25) NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
`overview` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
`impressions` TEXT NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
`state` INT(10) NULL DEFAULT '0',
`coverimg` VARCHAR(41) NULL DEFAULT NULL COLLATE 'utf16_unicode_520_ci',
PRIMARY KEY (`isbn13`)
)
COLLATE='utf8mb4_general_ci'
ENGINE=InnoDB
;
⑮ODBCドライバーをインストール
手順は、MariaDBと同様「Agreement」「Next」「Finish」
参考:http://mgate.info/db/mysql/852/
⑯MySQLへのODBC接続設定をする
コントロールパネル >> システムとセキュリティ >> 管理ツール >> データソース(ODBC)」を選択
ユーザーDSN または、システムDSN または、ファイルDSN で
「BOOKLOG_MYSQL」という名前で、
DSNを作成…BOOKLOG.js で使用している名前なので(変更する場合は、合わせて修正)
TEST DSN ボタンを押して確認(押してないとCHAR-SETが選べない)
構成は、⑬のセッションと同じ、CHAR-SETは、utf8mb4
ところが、
※ODBC接続エラー
「指定されたDSNには、ドライバーとアプリケーションのアーキテクチャの不一致が含まれています」
となったので、64bit版は、使えなかった(理由は、分からないが、HTAの制限?)
32bit版を入れ直してOKとなった。
⑰HTAソースをダウンロード(GitHubで、ソース公開しています。)
GitHub - frontflg/BOOKLOG_HTA: HTA + MySQL + BOOK LOG SYSTEM
任意のフォルダに置いて、BOOKLOG.hta をダブルクリック。
これで、僕は動きました。
※追加・修正情報があるので、Comment ↓ も見てください。