Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1590 / 9994 ←次へ | 前へ→

【11695】Re:MDBでMDE風みたいな
回答  YU-TANG  - 10/6/11(金) 17:20 -

引用なし
パスワード
   こんにちは、YU-TANG です。

> というわけで、保存形式がAC2000になっていました

それはおそらく [ツール]-[オプション]-[詳細]-[既定のファイル形式] を
「Access 2000」 に設定して(あるいは設定されたまま)使っていたから
でしょう。

> 上記が原因かわかりませんが

関係ありません。原因ではないです。

> charだと
> フォーム名等の後ろに半角スペース等付いて50文字となってしまい
> うまく動作しませんでした

それが固定長ですから。そういうものです。

> char → text
> としてうまく動作することが出来ました
>
> Create Table 初めて勉強したような気がしますか
> こんな理解でいいですか

可変長にしたかったのでしたら、それでよろしいかと思います。
理解度を確認したいなら、Access 付属の JET SQL のヘルプを参照すると
よいです。インストール漏れていたら追加しておきましょう。

> また、イメージ的にはコード的なものに主キーを付けるような気がしていたのですが
> こういう、名称列とうか文字列フィールドで主キーを張ることは
> 一般的なことなのでしょうか
> なんか使いやすいような気がしますが少ない知識ではあまり見たことがないような気がします
>
> 普通だよとか コメント頂けると助かります

ふつうです。
主キーはユニークであることを保証できれば、別にコード類である
必要はないです。
ただ他のテーブルの外部キーになることを想定する場合は、ユニークな
複合キーが合っても、それとは別に単一フィールドのコードを設ける
場合もあります。
要はケースバイケースであって、DB 全体の設計の中で他テーブルとの
連携を抜きにして一律 主キー=コードとかその逆とか言うのはナンセンス
と言うことです。


余談ですが、ADO を使うとテーブル作成時に複合主キーを一発で張れます。

Dim s As String

s = "create table T1 ("
s = s & "FormName   TEXT   NOT NULL,"
s = s & "ControlName TEXT   NOT NULL,"
s = s & "ColumnOrder SMALLINT NOT NULL,"
s = s & "ColumnWidth SMALLINT NOT NULL,"
s = s & "ColumnHidden BIT   NOT NULL,"
s = s & "CONSTRAINT PrimaryKey PRIMARY KEY (FormName, ControlName)" ' ここで主キーを設定
s = s & ")"

CurrentProject.Connection.Execute s

それでは。
1,307 hits

【11664】MDBでMDE風みたいな pon 10/5/26(水) 14:20 質問[未読]
【11672】Re:MDBでMDE風みたいな YU-TANG 10/6/1(火) 16:04 回答[未読]
【11687】Re:MDBでMDE風みたいな pon 10/6/10(木) 15:13 質問[未読]
【11688】Re:MDBでMDE風みたいな 小僧 10/6/10(木) 17:05 回答[未読]
【11692】Re:MDBでMDE風みたいな pon 10/6/11(金) 11:06 質問[未読]
【11695】Re:MDBでMDE風みたいな YU-TANG 10/6/11(金) 17:20 回答[未読]

1590 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078193
(SS)C-BOARD v3.8 is Free