- 締切済み
アクセス2000でID番号の変更
個人病院で患者さんの管理を任されているのですが、 患者さんの数が増えてきたのであと数年でID番号が足らなくなるために、 今のうちにID番号の桁数を6桁から9桁に増やしておきたいのですが、 100000、100001、100002と割り当てているのですが、 100000 → 080100000 100000 → 080100001 のように今までの番号の前に080を自動で増やしたいのですが、 できますでしょうか? それと、ID番号とは別に各個人の個別番号を割り当てているのでが、 10001、10002、10003・・・・20001、・・・・30001 10001 → 11000001 20001 → 12000001 30001 → 21000001 のように最初の数字によって 1 → 110 2 → 120 のように変換しながら増やすことができますでしょうか? よろしくお願いします。 データベースの事はまったくわからないので、 今までは自分のしたいことを、本屋さんで調べて、 できそうなことだけをやってきました。 パソコンは、 OS XP SP2 CPU P4 3.0GHz メモリ 1G ソフト OFFICE 2000 Pro です 。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- CHRONOS_0
- ベストアンサー率54% (457/838)
番号の変更は更新クエリで可能です 変更する前にリレーションシップで連鎖更新を設定しておくことを忘れないように 念のためにバックアップを取っておくことも必須でしょう
- mshr1962
- ベストアンサー率39% (7417/18945)
30001 → 21000001 は30001 → 13000001 の間違いですよね。 数値の先頭が 1 → 1100 2 → 1200 3 → 1300 で右4桁の連番がそのまま続く 上記で良いなら現状の変更は更新クエリになります。 フィールド名:ID番号 レコードの更新:"080" & [ID番号] フィールド名:個別番号 レコードの更新:"1" & Left([個別番号],1) & "00" & Right([個別番号],4)
お礼
早速のご返事ありがとうございます ID番号変更の件はうまくいきました。 個別番号の変換はおっしゃるとおり 30001 → 1300001 の間違いです。どうもすみません。 個別番号変更の件はエラーがでて更新できませんでした 0個のフィールドで型変換エラー ****件のレコードでキー違反 0件のレコードでロック違反 0件のレコードで入力規則違反が発生したため、 レコードを更新できませんでした。 となりできませんでした。 タイピングミスではないと思いますが、もう一度チャレンジしてみます ありがとうございました
お礼
早速のご返事ありがとうございます リレーションシップで連鎖更新の設定とは、 個別番号を変更したために、関連づけたデータはもう一度入力し直さないと思っていましたが、 関連づけたデータ側も同じように変換すればもう一度入力しなくてすむのですね ありがとうございます バックアップは取ってあります。