[英]What's the correct SQL query to retrieve date field without time? C# MS Access
[英]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.