Accessをはじめデータベース(DB)を作成していると作成したDBが正しいか検証を行う必要があります。

しかし、DBを検証するのにある程度のデータが既に用意されていれば問題ないのですが、まったくない状態だとデータを作成するのは非常に大変です。

日経ソフトウェア2006年01月号に「テスト用の名前データを自動生成する」という記事がありました。この記事ではPHPを使用して氏名のデータを作成するプログラムが掲載されているのですが、これをAccessで作れないかと思い、いざ作ってみたところVBAも使用しないで簡単に作ることができました。

Accessを起動して3つのテーブルを用意します。

テーブル名:tblFirstName
フィールド名 データ型
fldFirstNameChar テキスト型 インデックスを「はい(重複なし)」に設定
テーブル名:tblLastName1
フィールド名 データ型
fldLastNameChar1 テキスト型 インデックスを「はい(重複なし)」に設定
テーブル名:tblLastName2
フィールド名 データ型
fldLastNameChar2 テキスト型 インデックスを「はい(重複なし)」に設定

各テーブルには下記のようなデータを入力します。

  • tblFirstNameテーブルには苗字の1文字を登録します
  • fldLastNameChar1テーブルには名前の1文字目を登録します
  • tblLastName2テーブルには名前の2文字目以降を登録します
tblFirstName
fldFirstNameChar
fldLastNameChar1
fldFirstNameChar
tblLastName2
fldFirstNameChar
一郎

次にクエリで下記のSQL文を作成し、クエリ名:sqlFullNameで保存します。

SELECT
 [tblFirstName1].[fldFirstNameChar] &
 [tblFirstName2].[fldFirstNameChar] &
 [fldLastNameChar1] &
 [fldLastNameChar2] AS FullName
FROM
tblFirstName AS tblFirstName1,
tblFirstName AS tblFirstName2,
tblLastName1, tblLastName2
WHERE
(tblFirstName1.fldFirstNameChar)<>[tblFirstName2].[fldFirstNameChar];

以上で、保存したクエリ:sqlFullNameを表示すると苗字を2文字つなげて、名前を組み合わせた氏名が表示されます。

多少、苗字が変なところもありますがテスト用データとしては使用できるのではないでしょうか?

「住所もほしいな」という方は郵政省の住所録をダウンロードした方が早いと思います。:razz: