如何将 c# windows 应用程序与在线访问数据库连接

How to connect c# windows application with online access database

我们正计划为我们的大学在线帐户开发一个应用程序(集中式)。我们为此任务选择了 C# 和 Ms access 2007 数据库,我想知道,我们如何连接在线访问数据库?

快速 Google 搜索显示您使用 System.Data.OleDb,作为参考,请查看 MSDN 页面:https://msdn.microsoft.com/en-us/library/aa288452.aspx

请注意,直接从 C# 访问远程数据库是不好的做法,因为您必须以某种方式获取凭据,并且您的应用程序可能会被逆向工程并暴露凭据,从而使您的数据库对学生开放为所欲为。

您通常会做的是让服务器负责与数据库对话,并简单地从客户端向服务器请求信息。如果服务器只是一个 windows 框,最简单的方法可能是使用 System.Net.HttpListener 创建一个 HTTP 服务器,或者如果您已经这样做,也可以使用 ASP。在这两种情况下,您都将使用 System.Data.OleDb.

如果是Linux盒子,我建议你考虑创建一个MySQL数据库并使用PHP,这也是常见的做法。

首先,您必须 "Setting up an Access Database for Your Hosting Account" 才能在线获得 "Access Database" 作为集中式。

如果您使用 godaddy 托管,请访问此 Link

这里是在线访问的示例代码"Access Database"

string connectionString = 
    @"Provider=Microsoft.Jet.OLEDB.4.0;" +
    @"Data Source="Path of you hosting provider database";" +
    @"User Id= "hosting db user id];Password=[hosting db password";";

string queryString = "SELECT Foo FROM Bar";

using (OleDbConnection connection = new OleDbConnection(connectionString))
using (OleDbCommand command = new OleDbCommand(queryString, connection))
{
    try
    {
        connection.Open();
        OleDbDataReader reader = command.ExecuteReader();

        while (reader.Read())
        {
            Console.WriteLine(reader[0].ToString());
        }
        reader.Close();
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
}

有关更多信息,请访问此 link,希望这对您有所帮助。