2017年8月9日水曜日

Accessでオートナンバー型のカウントをリセット

リレーショナルデータベースにおいて
テーブルデザインの肝はやはり正規化でしょう。
データベーススペシャリストの資格ホルダーの
私が言えばある程度説得力があります。
各テーブルにはそのレコードを一意に示せる
フィールドを加えてそれを主キーとし、
各テーブル間でリレーションを組んで、
外部にはそれらを加工して見た目を都合よく整えます。
内容と外見を分離して考えるのは
MFCのドキュメントとビューや、
HTMLとCSSの関係に通ずるものがあります。

データベースの参考書などで鉄板の主キーと言えば、
[社員]テーブルの[社員コード]だったりします。
業務の便宜上ついているコードは、
社員で重なることがないため主キーにはうってつけです。
しかしそういう都合のいい主キーは
いつもいつも既に存在しているわけではなく、
データベースのために番号を振ることがあります。
そんな時便利なフィールドタイプがオートナンバー型です。
Microsoft Accessではそう呼びます。

オートナンバー型ならレコードを追加する際に
特に気にしなくても不都合でない番号が連番で割振られ、
とても便利です。
ところがレコードを削除するとその番号が永久欠番となり、
それが気になるのでオートナンバー型を忌み嫌う方もいます。
私はそんなに気にはなりません。
ただ、動作確認等する中でオートナンバーが進み、
本番運用開始時に1ではない中途半端な番号から始まるのは
さすがにいただけません。すごく目立ちますし。

そんなオートナンバー型のカウントリセットって
簡単にできないものかと調べたところ、
Microsoftが公式にAccess でオートナンバー型フィールドの値をリセットする方法
を公開しています。
ということで早速試してみようとしたのですが…
これがとんでもなくめんどくさい。
結局オートナンバー型を含むテーブルの全レコードを消した後に、
データベースの最適化を実行することで1に戻しました。
ともかく、需要は確実にあると思うので、
操作1つでリセットできるようにしてほしいところです。

0 件のコメント:

コメントを投稿