Sql server Access 2007无法识别SQl Server 2012日期格式
我有一个SQL Server 2012数据库,带有Access 2007前端。我的问题是Access无法识别SQL Server的日期,因为它们的格式不同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-s格式为
YYYY-MM-DD
- Access'格式为
DD-MM-YYYY
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中metweenDATETIME
应该没有问题。SQL Server不存储格式,它以一种或另一种方式显示日期的唯一原因取决于您的SQL Server设置。关于@SaUce的问题,请指出SQL Server中的实际列类型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后无法识别日期的问题。这不是最基本的问题吗?你的回答很有帮助,也是最基本的问题。谢谢