2014-12-09 66 views
2

在MS Access中,我需要按需自动创建表(大约可能有100个)。在MS Access中通过SQL指定日期/时间字段格式

SQL“CREATE TABLE”命令可以处理这个问题很好,但我需要格式化日期/时间字段,通过这样的表达式:

CREATE TABLE myTable (ID INTEGER, T DATETIME CONSTRAINT CT PRIMARY KEY, X DOUBLE, S CHAR) 

创建的表字段属性是这样的:

Created Table

,但我没有找到一种方法来设置 “格式” 字段属性,是 “YYYY-MM-DD HH:NN:SS”:

Required Table

有没有一种方法可以通过SQL表达式来指定,而不是使用MS Access宏?

最良好的祝愿,

回答

4

的DDL在Access中是有用的,但很有限,我不认为你可以定义它字段的格式。

要访问的所有表上的属性,你需要下降到VBA,使用DAO:

Public Sub UpdateFormat(tableName As String, fieldName As String, format As String) 
    Dim db As DAO.Database 
    Dim tb As DAO.TableDef 
    Dim fd As DAO.Field 

    Set db = CurrentDb() 
    Set tb = db.TableDefs(tableName) 
    Set fd = tb.Fields(fieldName) 
    fd.Properties("Format").Value = format 
End Sub 

这只是向你展示它是如何工作,你或许应该增加一些错误检查因为如果您尝试访问不支持Format媒体资源的字段,它会引发错误。

要使用它:

UpdateFormat "PO", "RateDate", "dd mmm yyyy" 
+0

感谢您的答复... – hyprfrcb 2014-12-10 02:54:47

相关问题