Sql server 使用SQL Server后端访问数据库

Sql server 使用SQL Server后端访问数据库,sql-server,ms-access,Sql Server,Ms Access,我有一个旧的Access应用程序,在表单和报表中有很多代码。数据库变得太大,我正在考虑将后端移到SQL Server 我的要求如下: 数据库需要是多用户的,用户(3-5)需要通过web登录 我不希望用ASP或其他web前端重新编写表单和报表 当我思考我的选择时,我将其视为: 拥有访问ADP前端,并允许远程登录到存储ADP的服务器。不确定两个用户是否可以同时登录 将ADP前端分发给用户,但我不确定是否可以通过internet连接到SQL Server后端,并且网络流量可能是一个问题 还有其他解决办

我有一个旧的Access应用程序,在表单和报表中有很多代码。数据库变得太大,我正在考虑将后端移到SQL Server

我的要求如下:

  • 数据库需要是多用户的,用户(3-5)需要通过web登录
  • 我不希望用ASP或其他web前端重新编写表单和报表
  • 当我思考我的选择时,我将其视为:

  • 拥有访问ADP前端,并允许远程登录到存储ADP的服务器。不确定两个用户是否可以同时登录

  • 将ADP前端分发给用户,但我不确定是否可以通过internet连接到SQL Server后端,并且网络流量可能是一个问题

  • 还有其他解决办法吗

  • 我感谢所有的帮助

    • u

    将sql server后端公开到internet并通过internet访问前端的唯一安全方法是通过vpn。除非您在access代码中重写查询和其他sql以在sql server上执行查询,否则sql server可能会将整个表传输到access前端进行处理和筛选,这在vpn上会很慢。如果你真的不想重新编码,我认为rdp访问将是最有效的

    我在客户端MDB FE上使用VPN/ADSL连接到其服务器。在某些地区,工作比在办公室工作稍微慢一些。但它确实很有效。因此,我认为没有必要将应用程序转换为ADP格式

    请注意,他们在创建视图和存储过程方面做了大量工作,以大大提高性能

    SQL Server组中有一个工具比内置的升迁向导更好


    也可以在第页看到我的随机想法。

    我建议不要将其重写为ADP(我希望您确实意识到,您不能将MDB转换为ADP?)。在过去的5年里,微软一直反对使用ADP,在Access的最后两个版本(A2007和A2010)中,ADP没有受到任何开发关注。它可能会在下一版本的Access中引起一些注意,也可能会被删除(在两个版本的无更改之后,DAPs就是这样)

    对access应用程序进行多站点访问的最简单方法是使用Windows终端服务器。这非常容易实现,成本也不高,并且不需要对Access应用程序进行任何更改(当然,我假设您会升级后端)

    您可能还想熟悉Access 2010的精彩新功能,这些功能与Sharepoint Server 2010及其新的Access Services集成,以允许开发Access应用程序,该应用程序在Access客户端和web浏览器(通过Sharepoint)中几乎相同地运行。当然,这需要进行一次重大的重写,但它也具有相当的可扩展性


    据我所知,这也是Access的未来,在未来几年内,它将受到Microsoft的广泛关注。

    ADP在WAN上的速度肯定比链接表快。链接表是世界上效率最低的东西。Jet已经10年没有任何新功能了。。Access数据项目在每个版本中都有新功能,包括Access 2000、2002、2003、2007和2010。随着SQLServer的发布,ADP在2005年和2008年也获得了新功能。ADP在每一个版本中都有新的功能,它不是独立的,而是完全支持的。与Jet一样,ADP也发布了一些特定的修补程序。

    自Access 2013起,ADP肯定不再受支持。它已从Access 2013中完全删除。请参阅:“Access 2013不包括对Access数据项目(ADP)的支持。”因此,请勿将其与Access 2013一起使用。我不认为Access 2013真的为黄金时间做好了准备,反正Access Services是一个PITA!我从未使用过Access 2013,因此无法对此发表评论。我也没有使用ADP,所以无法评论它相对于链接表的优点。然而,我认为,如果您打算一个新的或更新的应用程序使用一年或两年以上,一般来说,使用不推荐的技术不是一个好主意。也许今年不会,也许明年不会,但在某个阶段,正在使用的Access版本将被更新,然后应用程序将不得不重新设计。也可以通过首先避免不推荐的技术来避免未来的痛苦。