Sql server Access 2007无法识别SQl Server 2012日期格式

Sql server Access 2007无法识别SQl Server 2012日期格式,sql-server,datepicker,ms-access-2007,date-format,data-migration,Sql Server,Datepicker,Ms Access 2007,Date Format,Data Migration,我有一个SQL Server 2012数据库,带有Access 2007前端。我的问题是Access无法识别SQL Server的日期,因为它们的格式不同 SQL Server-s格式为YYYY-MM-DD Access'格式为DD-MM-YYYY 当日期显示在文本框中时,它将显示为字符串(旁边没有小日历图标)。 我是否可以配置我的访问前端,以便它能够识别SQL Server的日期 我使用Microsoft SQL Server Migration Assistant进行访问,将数据迁移到S

我有一个SQL Server 2012数据库,带有Access 2007前端。我的问题是Access无法识别SQL Server的日期,因为它们的格式不同

  • SQL Server-s格式为
    YYYY-MM-DD
  • Access'格式为
    DD-MM-YYYY
当日期显示在文本框中时,它将显示为字符串(旁边没有小日历图标)。 我是否可以配置我的访问前端,以便它能够识别SQL Server的日期

我使用Microsoft SQL Server Migration Assistant进行访问,将数据迁移到SQL Server中

由于这个数据库正在开发中,我的本地机器上的SQL Server位于C驱动器中(没有虚拟驱动器)

从我的研究中,我发现了这个答案:

用户遇到的问题是驱动程序。Microsoft有一个必须放在客户端上的新DLL 工作站(如果是Citrix,则为服务器)。完成后,MS Access中的所有日期都将生效 对。我最近一次使用Access 2010的经历与Access 2003完全相同。 它需要一个DLL。然后,使用无DNS连接字符串进行调查

在哪里可以找到这个DDL驱动程序以及如何安装它

谢谢
Maggs

我在本地PC(Vista)上使用SQL Server 2012,并且有一个Access 2010前端,有大约75个链接表。 SQL Server中的表有一个名为“EnteredDate”的列,该列定义为“datetime”。 在Access中,“EnteredDate”列定义为“日期/时间”。 在Access中,我刚刚使用正确的结果运行了以下查询:

SELECT DataError.Description, DataError.EnteredDate
从数据错误
其中((DataError.EnteredDate)介于2010年1月1日和2010年1月31日之间)

我发现SSMA出于某种原因将所有datetimes转换为datetime2。我进入SQLServerManagementStudio并将它们更改为datetimes,它解决了这个问题。您还可以检查SSMA中的字段映射,并在迁移之前进行调整


(我有完全相同的环境—使用SSMA的SQL Server 2012和Access 2007。)

您是将日期存储为SQL中的
DATETIME
还是
VARCHAR
?如果是DATETIME,则在SQL和ACCESS中metween
DATETIME
应该没有问题。SQL Server不存储格式,它以一种或另一种方式显示日期的唯一原因取决于您的SQL Server设置。关于@SaUce的问题,请指出SQL Server中的实际列类型datetime列应在Access中显示为
Date/Time
字段。其他SQL Server列类型,如
日期
时间
通常在Access中以文本值的形式出现(因为Access没有仅为
日期
时间
的字段类型)。此外:(1)如果您可以提供问题中引用的有关DLL“修复”的文章的链接请编辑您的问题以将其包括在内。(2) 更新的DLL是改变了Access(或ODBC)的行为,还是改变了SQL Server迁移助手的行为?您好,我做了一个工作。导入数据时,它在access中以日期开始,在迁移到SQL Server时以dataTime2结束。然后,我将内容复制到另一列,该列的数据类型为“日期”,格式为“国际日期”。在access中,它以国际格式显示为dateTime。如果我不必将数据复制到另一列,那会更容易。谢谢:-)嗨,我会尝试找到答案并链接它。感谢您的建议和帮助maggsHi Wayne感谢您的回复。我可以运行查询,但当我到达表单时,我遇到了日期选择器不显示的问题,并且日期显示为国际格式的日期时间。多亏了maggsOK,因为我可以在表单上看到日期选择器(使用连续或数据表格式),所以我们有不同之处。是的,在SQL Server中,我的日期如下:2010-02-24;在Access中显示为2010年2月24日,请检查Access列并确保它是“日期/时间”。我必须问Access是直接链接到表还是通过视图链接的?这并不能回答这个问题。若要评论或要求作者澄清,请在其帖子下方留下评论-您可以随时对自己的帖子发表评论,一旦您有足够的评论,您就可以发表评论。我认为这确实回答了如何解决Access 2007在使用SSMA迁移到SQL Server 2012后无法识别日期的问题。这不是最基本的问题吗?你的回答很有帮助,也是最基本的问题。谢谢