2011-03-09 100 views
5

將正確的Access DDL查詢添加到表中的布爾數據類型列是什麼?ALTER TABLE:添加一個具有默認值的新布爾列和複選框

到目前爲止,我看到的例子類似下面的...

ALTER TABLE MyTable ADD MyNewColumName BIT 

,但他們似乎沒有100%正確的,因爲

  1. Access不CheckBox控件適用於新添加的列,和
  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.

如果使用此字段填充複選框,它將正常運行。

您可以更改您的ALTER語句中使用「YESNO」本身:

ALTER TABLE mytable ADD mynewcolumn YESNO 

這應該給你的訪問表列中選擇所需的複選框。

+0

恐怕不行,複選框只能用DAO得到。 – Fionnuala

+0

@Remou其實它也可以 – OrElse

相關問題