こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Access2003_ALTER TABLE構文

Accessのテーブルにフィールドを追加したくSQLで命令文を書いています。

1.[T_テーブル1]というテーブルに[フィールドA]というフィールドを
データ型:数値型
フィールドサイズ:単精度浮動小数点型
小数点以下表示桁数:2位まで表示
で追加したいです。
→ALTER TABLE T_テーブル1 ADD COLUMN フィールドA FLOAT4
これに少数点以下桁数を設定するにはどう書けばよろしいでしょうか?

2.[T_テーブル1]というテーブルに[フィールドB]というフィールドを
データ型:数値型
フィールドサイズ:長整数型
で追加しました。
→ALTER TABLE T_テーブル1 ADD COLUMN フィールドA INT
「説明」の箇所に説明書きも入れたいのですがここでの設定は可能でしょうか?

以上2点につきましてご指導頂きたくよろしくお願い致します。

投稿日時 - 2011-05-25 19:55:37

QNo.6763166

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

失礼しました。VBEの参照設定で、Microsoft DAO 3.6 Object Library にチェックを入れてお試しください。

イミディエイトウィンドウにて
?application.CurrentDb.TableDefs("テーブル名").Fields("フィールド名").Properties("description").Value
↑として、EnterKey で『説明』が返ってきませんか(あればの話ですが (^^ゞ)
application.CurrentDb.TableDefs("テーブル名").Fields("フィールド名").Properties("decimalplaces").Value =4
同様に入力後、EnterKeyで桁数が4桁になるとハズ?

標準モジュールにて
Sub test()
'要参照設定 Microsoft DAO 3.6 Object Library
  Dim db As DAO.Database
  Dim tdf As DAO.TableDef
  Dim fld As DAO.Field
  Dim prp As DAO.Property
  On Error Resume Next
  Set db = Application.CurrentDb
  Set tdf = db.TableDefs("そのテーブル名")
    For Each fld In tdf.Fields
      Debug.Print fld.Name
      For Each prp In fld.Properties
        Debug.Print , prp.Name, prp.Value
      Next
    Next
  Set tdf = Nothing
  Set db = Nothing
End Sub

当方Access2002

投稿日時 - 2011-05-26 15:36:13

補足

何度も申し訳ありませんでした。
ご丁寧に書いてください大変ありがたいのですが、私はあまり詳しくないもので
まだちょっとよく分からなくて・・・。

DAO 3.6 Object Library にチェックを入れた後
書いていただいたコードをひとまずコピペして使わせてもらってみました。
(Dim db As DAO.Database ~ Set db = Nothing)
Set tdf = db.TableDefs("そのテーブル名")の箇所には該当のテーブル名を入力
しましたが他の箇所もきっと変更しなけれないけない箇所があるんですよね?
このままで実行してみたらとりあえずどうなるのかとやってみたところ
何も変化は見られませんでした。
もしお時間ありましたら細かく教えて頂きたいのですが・・・。

投稿日時 - 2011-05-28 16:17:17

お礼

2度に渡りご丁寧な回答を頂け感謝致します。
ありがとうございました。

投稿日時 - 2011-06-01 09:41:16

ANo.1

たぶん、Accessが独自に追加した部分なので、SQLでは出来ないのでは?

?application.CurrentDb.TableDefs("テーブル名").Fields("フィールド名").Properties("description").Value

application.CurrentDb.TableDefs("テーブル名").Fields("フィールド名").Properties("decimalplaces").Value =4

で参照と変更は出来ましたけど・・・。

投稿日時 - 2011-05-26 00:11:58

補足

回答ありがとうございますm(_ _)m
お手数なのですがこのコード以外に書かなければいけないコードがあるようでしたら
教えて頂けないでしょうか?
こちらのコードだけだとエラーが出てしまうもので。
申し訳ないです。

投稿日時 - 2011-05-26 09:22:23

あなたにオススメの質問