托管 Access DB
因此,我在托管数据库方面缺乏经验,并且我总是有其他人获得数据库设置的奢侈。
我打算帮助朋友设置网页,我有 Asp.Net MVC 经验,所以我就这么做。他们想要设置一个搜索页面来查询数据库并显示结果。我的问题是如何设置数据库并托管。他们目前仅在本地计算机上拥有 Access DB。搜索时基本上只需要查询一张表。
访问此表/数据库的最佳方法是什么?他们希望将数据库的主副本保留在本地计算机上,因此将整个数据库复制到托管站点将非常耗时,是否可以将所需的单个表单独复制到主机?我是否应该尝试说服他们对托管数据库进行更改并为本地计算机复制该数据库?欢迎提出任何建议,同样,在托管数据库方面,我完全是个菜鸟。
谢谢
补充:他们使用的是 MS Access 2000,该页面将有访问限制。感谢您的回复。
So I'm inexperienced in hosting DB's and I've always had the luxury of someone else getting the db setup.
I was going to help a friend out with getting a webpage setup, I've got experience in Asp.Net MVC so I'm going with that. They want to setup a search page to query a db and display the results. My question I have is in getting the DB setup and hosted. They currently just have the Access DB on a local computer. There is basically only one table that would need to be queried for the search.
What is the best approach to getting this table/db accessible? They would like to keep the main copy of the db on the local machine, so copying the entire db over to the hosted site would be time consuming, could the lone table needed be solely copied to the host? Should I try to convince them to make changes on the hosted db and just make copies of that for their local machines? Any suggestions are welcome, Again I'm a total noob when it comes to hosting databases.
Thanks
Added: They are using a MS Access 2000, and the page will have access restrictions. Thanks for the responses.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
SQL Server Express 怎么样?我认为您可以从 Access 进行远程连接,然后从 Access 推送数据。
无论如何,我都不会在 Web 服务器上使用 Access。
How about SQL Server Express? I think you can do a remote connect from Access and just push the data over from Access.
I wouldn't use Access on a web server in any case.
我强烈建议不要从 Web 工作进行访问,它只是不是为此而设计的,并且鉴于 SQL Server Express 是免费的,因此没有理由不尝试一下。
您可以使用 SQL Server 升迁向导迁移数据,以下是有关使用该功能的帮助链接
http://support.microsoft.com/kb/237980
I would strongly recommend against access from web work, its just not designed for it and given that SQL server express is free there is no reason not to give it a go.
You can migrate the data over by using the SQL server upsizing wizard, here is a link for help on using that feature
http://support.microsoft.com/kb/237980
这取决于你所说的网络工作是什么意思? Access 2010 可以构建可扩展的浏览器中立的 Web 应用程序。他们可以扩展到 1000 个用户。事实上,您甚至可以将网站停放在 Microsoft 的新云托管选项上,并根据需要扩展到任意数量的用户。
这是我在 Access 2010 中编写的应用程序的视频。请注意我在中途如何在标准 Web 浏览器中运行相同的应用程序(包括 Access 表单)。该应用程序 100% 在 Access 客户端内部构建。最终结果不需要 ActiveX 或 Silverlight 即可运行。
http://www.youtube.com/watch?v=AU4mH0jPntI
上面显示 access 现在可以用于构建大规模网站(您可以忽略其他两个海报的令人困惑的答案,他们不太了解 access 的工作原理或功能)。
但是,对于您的情况,我将继续在桌面上保留访问数据库。您只需链接到 Web 服务器上托管的表即可。这些表可以存在于 MySql 或 sql server 中。只要网站支持外部 ODBC 连接(很多都支持),那么您就可以让桌面应用程序使用来自 Web 服务器的实时数据。如果始终与实时数据的连接是一个问题,那么您当然可以设置一些东西来以某种间隔或相反的方式发送新记录(或整个表),并按间隔从网站(取决于您需要走哪条路)。因此,只要 Web 托管和站点允许外部 ODBC 连接,连接到 MySql 或 sql server 就非常容易。我一直这样做,而且效果很好。
如前所述,Access 2010 的新增功能是网站构建功能,但这确实需要在 SharePoint 上运行的 Access Web 服务。
It depends on what you mean by web work? Access 2010 can build scalable browser neutral web applications. They can scale to 1000's to users. In fact, you can even park the web sites on Microsoft's new cloud hosting options, and scale out to as many users as you need.
Here is a video of an application I wrote in access 2010. Note how at the half way I run the same application including the Access forms in a standard web browser. This application was built 100% inside of the Access client. The end result needs no ActiveX or Silverlight to run.
http://www.youtube.com/watch?v=AU4mH0jPntI
So, the above shows that access can now be used to build scale web sites (you can ignore the confusing answers by the other two posters here they are not quite up to speed on how access works or functions).
However, for your case, I would continue to have the access database on the desktop. You can simply link to tables that are hosted on the web server. Those tables can exist in MySql, or sql server. As long as the web site supports external ODBC connections (many do), then you can thus have the desktop application use the live data from the web server. If connections to the live data at all times is a issue, then you could certainly setup something to send up new records (or the whole table) on some kind of interval or perhaps the reverse, and pull down new records on a interval from the web site (depends which way you need to go). So, connecting to MySql or sql server is quite easy as long as the web hosting and site permits external ODBC connections. I do this all the time, and it works quite well.
As mentioned, new for access 2010 is web site building ability but that does requite Access Web services running on SharePoint.
您无需升级到 Access 2010。一种选择是使用 EQL 数据插件 同步数据库到服务器。然后,您可以编写一个 asp.net、php 或任何使用 EQL API 查询表的应用程序,并根据需要打印结果。 这篇知识库文章介绍了如何从 Web 应用程序使用 EQL API。
好处是,即使您不在线,数据库仍然完全可用(并且全速),然后您可以偶尔将新数据同步到网络。它只上传更改,而不是每次上传整个数据库,因此速度很快。
免责声明:我在 EQL Data 工作,所以我有点偏见。但这种用例是公司存在的全部原因。
You don't need to upgrade to Access 2010. One option is to use the EQL Data plugin to sync the database up to the server. Then you can write an asp.net, php, or whatever application that queries the table using the EQL API and prints the results however you want. This kb article describes how to use the EQL API from a web app.
The nice thing is that the database is still totally usable (and at full speed) even when you're not online, and then you can sync the new data up to the web occasionally. It only uploads the changes, not the entire database every time, so it's fast.
Disclaimer: I work at EQL Data so I'm a bit biased. But this kind of use case is the whole reason the company exists.