スポンサードリンク

AccessでMySQL用のフォームを作成する方法。

データベースとして高機能なMySQLと、使いやすいAccessを組み合わせるとかなり便利です。一つ目のメリットはMySQLのデータを視覚的に操作できるので、開発が楽になります。

そして二つ目のメリットは、開発ツールとしてのAccessです。ODBCを設定して一度テーブルをリンクしてしまえば、クエリやフォーム、レポート、VBAなどAccessの機能がそのまま使えます。つまりAccessでユーザー側のシステムを構築することができるのです。

Accessは初心者でも使いやすいデータベースなので、MySQLのデータを表示するフォームやレポートを簡単に作れます。試しに今回はフォームを作ってみましょう。


【1】以下の図を参考にMySQLを開始・接続します。

1.コマンドプロンプトを起動します。
2.「net start mysql」と入力し、「Enterキー」を押します。
3.「mysql -u pgtop -p -b」と入力し、「Enterキー」を押します。
4.パスワードを求められるので「12345」入力し、「Enterキー」を押します。

mysql-114.gif

*「-b」オプションを付けて起動するとビープ音が出なくなります。


【2】以下のSQL文を入力し、使用するデータベースを選択します。

USE SampleDB040;

mysql-116.gif


【3】Accessの「SampleDB040Conn.mdb」を開きます。

mysql-343.gif


【4】オブジェクトから「フォーム」を選択します。

mysql-344.gif


【5】「新規作成」をクリックします。

mysql-345.gif


【6】「フォーム ウィザード」、「t01prefecture」を選択し、「OK」ボタンをクリックします。

mysql-346.gif


【7】「>>」ボタンをクリックします。

mysql-347.gif


【8】フィールドがすべて選択されたことを確認し、「次へ」ボタンをクリックします。

mysql-348.gif


【9】「表形式」を選択し、「次へ」ボタンをクリックします。

mysql-349.gif


【10】「標準」を選択し、「次へ」ボタンをクリックします。

mysql-350.gif


【11】フォーム名に「F03Prefecture」、「フォームを開いてデータを入力する」にチェックし、「完了」ボタンをクリックします。

mysql-351.gif


【12】フォームが開き、MySQL側のデータが表示されました。

mysql-352.gif


【13】Access側のフォームから追加、更新、削除を行い、MySQL側のデータを変更できることを確認してください。


mysql-358.gif

SELECT * FROM T01Prefecture;
mysql-318.gif

フォームで削除する場合は、削除したいレコードを選択してから、ツールバーの「レコードの削除」ボタンをクリックするか「Deleteキー」を押します。マウスで右クリックして「切り取り」でも削除できます。

mysql-359.gif


【14】フォームの動作を確認したら閉じます。

mysql-353.gif

このようにAccessならウィザードに従うだけで作れる単純なフォームも、Javaなどのプログラミング言語ではかなりの量のソースコードを書かなければなりません。


次は販売伝票でAccessとMySQLの連携を確認してみましょう。販売伝票は少し複雑ですので、あらかじめフォームは作成してあります。作り方は最後の「ワンポイント」をお読みください。

【15】オブジェクトのフォームで「F01Slip」を選択し、「開く」ボタンをクリックします。

mysql-354.gif


【16】販売伝票フォームの画面が表示されました。

mysql-356.gif

*この画面は F01Slip に F02Details が組み込まれる形になっています。


【17】販売伝票でもAccess側のフォームから追加、更新、削除を行い、MySQLのデータを変更できることを確認してください。

白いコントロールは値を変更できます。灰色はクエリの働きで自動的に表示されます。
mysql-360.gif

*SLIP_DATE と CST_CD のデータは、カーソルを明細部分に移動した時か、販売伝票のレコードを移動したときに確定します。

MySQLでの確認の仕方

SELECT * FROM T07Slip;
mysql-361.gif

SELECT * FROM T08Details;
mysql-362.gif

*明細のレコードを新しく追加した場合は下のほうに表示されます。


【18】確認したら販売伝票フォームを閉じます。


【19】Accessのファイルを閉じます。


【20】以下の図を参考にMySQLを終了・停止します。

1.「exit」と入力し、「Enterキー」を押します。
2.「net stop mysql」と入力し、「Enterキー」を押します。

mysql-87.gif


【21】コマンドプロンプトは閉じてください。


販売伝票のような画面をJavaで作るとしたら、数百から千行を超えるソースコードを書く必要があります。ユーザー側の画面をAccessで作るメリットを実感できたのではないでしょうか。

今回は取り上げませんでしたが、AccessではVBAによるプログラミングもできますので、より細かい制御ができます。Accessは開発ツールとしても重宝します。


【ワンポイント】

販売伝票は2つのクエリと2つのフォームからできています。

mysql-357.gif

販売伝票フォームの作り方や仕組みはMicrosoft Access初心者入門講座で詳しく解説しています。

興味がある方は「Access クエリの使い方 中級」からご覧ください。Accessのテーブルを使うか、リンクしたMySQLのテーブルを使うかの違いだけです。試す場合はMySQLの開始をお忘れなく。


スポンサードリンク






MySQL初心者入門講座TOPへ