我有一个带有Access 2007前端的SQL Server 2012数据库。我的问题是Access无法识别SQL Server的日期,因为它们的格式不同。
YYYY-MM-DD
DD-MM-YYYY
当日期显示在文本框中时,它显示为字符串(旁边没有小日历图标)。 无论如何我可以配置我的Access前端,以便它识别SQL Server的日期吗?
我使用Microsoft SQL Server Migration Assistant for Access将数据迁移到SQL Server
由于这个数据库正在开发中,我在C盘中的本地机器上安装了SQL Server(没有虚拟驱动器)
根据我的研究,我找到了这个答案:
用户遇到的问题是驱动程序。 Microsoft有一个必须放在客户端上的新DLL 工作站(或Citrix的服务器)。完成后,MS Access中的所有日期都将起作用 正常。我对Access 2010的最新体验与Access 2003完全相同。 它需要一个DLL。从那里开始,使用DNS-Less连接字符串进行调查
我在哪里可以找到这个DDL驱动程序以及如何安装它。
由于 梅格斯
答案 0 :(得分:2)
我发现SSMA由于某种原因将所有日期时间转换为datetime2。我进入SQL Server Management Studio并将它们更改为日期时间,它解决了问题。您还可以在SSMA中检查字段映射并在迁移之前进行调整。
(我有完全相同的环境 - 使用SSMA的SQL Server 2012和Access 2007。)
答案 1 :(得分:0)
我在本地PC(Vista)上使用SQL Server 2012,并拥有一个包含~75个链接表的Access 2010前端。 SQL Server中的表有一个名为“EnteredDate”的列,定义为“datetime”。 在Access中,'EnteredDate'列被定义为'Date / Time'。 在Access中,我刚刚运行了以下查询并获得了正确的结果:
SELECT DataError.Description, DataError.EnteredDate
FROM DataError WHERE(((DataError.EnteredDate)介于#1/1 / 2010#和#1/31/2010#));