我使用的是Access 97 database.It有很多表单。数据大容量。我必须尽快升级它。我买了SQL Server2005企业版。
我想使用SQL Server作为数据载体。我将定期使用Access表单。我只想将数据导出到sql服务器。
是否可以使用“链接”数据存储?
发布于 2009-06-01 22:50:39
虽然我同意HLGEMs第一段,但我不同意HLGEMs第二段。有些怪癖你需要知道,而我对此一无所知。例如将布尔值字段更改为LittleInt。但除此之外,重新创建数据库模式需要进行大量繁琐的工作。而且它很容易出错,比如缺少索引或关系。
有一个来自SQL Server组的工具,它比“升迁向导”尤其是Access 97版本要好得多。SQL Server Migration Assistant for Access (SSMA Access) http://www.microsoft.com/sql/solutions/migration/access/default.mspx
当您发现这些怪癖时,您可以更改脚本以通过适当的更改重新创建数据库。
发布于 2009-06-02 02:30:14
我同意Tony Toews的观点(在这一点上你应该相信他,他是一位访问专家):使用SSMA来帮助你将数据移动到SQL Server,它做的工作比集成在Access中的升迁向导更完整(无论如何,升迁到SQL Server2008是行不通的)。
不过,您必须对一些警告保持警惕;关于您应该检查的一些东西,我已经做了一个blog post。
关键是,如果最初的Access数据库没有过多地依赖Access允许的权限(例如,表和列名称中的奇怪字符),那么这个过程将会容易得多。
特别注意SSMA报告的所有警告和错误,它们在帮助您专注于必须解决的问题方面非常有用。
关于性能,迁移到SQL Server并不一定会让事情变得更快。
在某些领域,它实际上会变得更慢,有时要慢得多:
Access非常擅长优化某些形式的数据访问,但是一旦数据库移出了它的范围,它就没有那么多的控制权了。
不过,大多数事情都会运行得很好。
您可能必须重写一些查询,可能会将它们作为SQL Server上的视图移动,而不是将它们保留在Access应用程序中。
一些小事情,比如在查询中使用%而不是*作为通配符,在WHERE子句中使用LIKE也会导致奇怪的问题,比如查询不返回任何记录。
顺便说一下,我会在他自己的网站上发布一个关于SQL升迁的非常好的资源:。
还有一篇关于在Access中使用SQL Server时需要考虑的事项的详细读物:
发布于 2009-06-01 13:55:08
YOu可以将SQL Server表作为链接表添加到access。然后,您将希望开始查看最慢的查询,并将它们转换为已存储的proc。
不要在Access中使用升级向导来创建SQl服务器表,因为它对数据类型的选择不佳。自己创建脚本,选择最好的数据类型。这样做需要更长的时间,但您的数据库将执行得更好,并且您将更好地了解如何在SQL Server中执行操作。您应该现在就开始,学习如何通过脚本而不是GUI来做任何事情。最好从一开始就学习SQL Server中的良好习惯。
https://stackoverflow.com/questions/934869
复制相似问题