2011-03-09 9 views
5

ブール型データ型列をテーブルに追加するための正しいAccess DDLクエリは何ですか?ALTER TABLE:既定値とチェックボックスを含む新しいブール値列を追加します

これまでのところ、私は次のよう...

ALTER TABLE MyTable ADD MyNewColumName BIT 

のような例を見てきましたが、

  1. アクセスにチェックボックスコントロールを適用していないので、彼らは100%正しいとは思えません。新しく追加された列、および
  2. その列の許容値は0-1
ように見えます
+0

この質問は(あなたのタイトルは誤解を招くおそれがあり)、フィールドのデータ型を設定しますが、デフォルトの表示制御の設定についての話ではありません。 @Remouが以下に述べるように、それはDDLで設定可能なものではありません。 –

答えて

5

DAOの例です。

''Requires reference to Microsoft DAO 3.6 Object Library 
Dim tdf As DAO.TableDef 
Dim fld As DAO.Field 
Dim db As Database 
Dim strSQL As String 


Set db = CurrentDb 

''Create a table ... 
strSQL = "Create Table tblLTD (TheYesNoCheck YesNo, TheYesNoCombo YesNo)" 
db.Execute strSQL 

''It is now in the table collection, so ... 
Set tdf = db.TableDefs("tblLTD") 

''Change the way the YesNo fields display. 
''A Checkbox 
Set fld = tdf.Fields("TheYesNoCheck") 
Set prp = fld.CreateProperty("DisplayControl", dbInteger, acCheckBox) 
fld.Properties.Append prp 

''A combobox 
Set fld = tdf.Fields("TheYesNoCombo") 
Set prp = fld.CreateProperty("DisplayControl", dbInteger, acComboBox) 
fld.Properties.Append prp 
''We will need a format 
Set prp = fld.CreateProperty("Format", dbText, "Yes/No") 
fld.Properties.Append prp 

から:http://wiki.lessthandot.com/index.php/Add_a_Display_Control_(Checkbox,_Combobox)_to_a_YesNo_Field

5

はい/いいえデータ型は、はい/いいえ、真/偽、またはオン/オフを表示できる論理フィールドです。 VBAコードを見ると、trueとfalseの定数は-1と0に相当します。

このフィールドを使用してチェックボックスを設定すると、正しく機能します。

次のような「YESNO」を使用するようにALTERステートメントを変更することができる場合があります

ALTER TABLE mytable ADD mynewcolumn YESNO 

あなたのアクセステーブルの列で目的のチェックボックスを与えなければならないこと。

+0

それは、私は恐れていない、チェックボックスはDAOでしか得ることができません。 – Fionnuala

+0

@Remou実際にはそれも動作します – OrElse

関連する問題