Access中如何用代碼建立小數(shù)類型的字段
已有 2483 次閱讀2015-5-20 08:53
|個人分類:Access
在Access中用代碼建立表和字段,通常用DAO的方式。
如:
Dim dbs As DAO.Database
Dim tdf As DAO.TableDef
Dim fld As DAO.Field
Set dbs = CurrentDb
Set tdf = dbs.CreateTableDef("表1")
Set fld = tdf.CreateField("字段1", dbText)
tdf.Fields.Append fld
dbs.TableDefs.Append tdf
或:
CurrentDb.Execute "CREATE TABLE 表1(字段1 TEXT);"
但如果要建立"小數(shù)"類型(dbDecimal 、DECIMAL)的字段,這兩種方法就會出錯,提示字段定義語法錯誤。
有三種解決方法:
第一種,用ADO方式運(yùn)行 CREATE TABLE 語句:
CurrentProject.Connection.Execute "CREATE TABLE 表1(字段1 DECIMAL);"
注意這里用CurrentProject.Connection取代了CurrentDb,因?yàn)镃urrentProject.Connection返回的是ADO的Connection對象。
第二種,在菜單上 點(diǎn)擊 "工具"—>"選項(xiàng)", 選擇"表/查詢"選項(xiàng)卡,在"SQL Server兼容語法(ANSI 92)"項(xiàng)中勾選"當(dāng)前數(shù)據(jù)庫"。這個選項(xiàng)會改變數(shù)據(jù)庫中SQL語句的解釋方式,如通配符會改變,有可能原有的查詢不能返回正常結(jié)果。
然后用RunSQL方法運(yùn)行 CREATE TABLE 語句:
DoCmd.RunSQL "CREATE TABLE 表1(字段1 DECIMAL);"
第三種,用ADOX對象,具體代碼略。