繁体   English   中英

通过MS Access中的SQL指定日期/时间字段格式

[英]Specify Date/Time Field Format through SQL in MS Access

在MS Access中,我需要根据需要自动创建表(大约100个以上)。

SQL'CREATE TABLE'命令可以很好地解决此问题,尽管我需要通过这样的表达式来格式化日期/时间字段:

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

创建的表字段属性如下所示:

创建表

但是我还没有找到一种将“格式”字段属性设置为“ yyyy-mm-dd hh:nn:ss”的方法:

必填表

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

最好的祝愿,

Access中的DDL很有用,但非常有限,我认为您不能使用它定义字段的格式。

要访问表上的所有属性,您需要使用DAO下拉至VBA:

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"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM