【问题标题】:Can I Use MS-Access in back end instead of MYSQL我可以在后端使用 MS-Access 而不是 MYSQL
【发布时间】:2017-02-17 07:01:01
【问题描述】:

我想在我的 C# .net 软件中使用 MS-Access 代替 MYSQL,所以这可以在基于 Web 和基于 Windows 的软件/应用程序中使用 Access as an back end

请帮帮我。

【问题讨论】:

  • 我确信这是可能的(至少在具有本地副本的 Windows 应用程序中),但是为什么要使用 Access 而不是 MySQL? Access 通常不被视为“严肃”的数据库。尤其是当有这么多更强大的选项可用时,几乎没有成本。
  • 实际上我想在我的服务器上让我的软件在线,因为服务器有一个 Windows 操作系统,所以我可以轻松地使用访问权限而不是在他们的服务器上安装 sql server 然后使用它。
  • 我强烈建议 Windows 服务器使用 SQL Server Express 与 Access。如果你在 Access 上死心塌地,那么将 access 放在服务器上,看看你的应用是否可以连接。
  • 哦,谢谢你的建议#Tim。
  • 是的,两种情况都有可能。但是,将 Access 用于 Web 应用程序只是自找麻烦。就个人而言,我永远不会考虑它。对于 Windows 应用程序,它可以很好地工作,这取决于许多因素(您需要做一些研究)。使用独立应用程序(如内置 C#),您无需安装 Access。只有正确的驱动程序。

标签: c# sql-server ms-access


【解决方案1】:

请勿将 Access 用于任何基于 Web 的事物。使用 SQL Server Express。类似下面的代码应该适合你。

using System;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient; 

namespace WindowsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string connetionString = null;
            SqlConnection sqlCnn ;
            SqlCommand sqlCmd ;
            SqlDataAdapter adapter = new SqlDataAdapter();
            DataSet ds = new DataSet();
            int i = 0;
            string sql = null;

            connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password";
            sql = "Select * from product";

            sqlCnn = new SqlConnection(connetionString);
            try
            {
                sqlCnn.Open();
                sqlCmd = new SqlCommand(sql, sqlCnn);
                adapter.SelectCommand = sqlCmd;
                adapter.Fill(ds);
                for (i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
                {
                    MessageBox.Show(ds.Tables[0].Rows[i].ItemArray[0] + " -- " + ds.Tables[0].Rows[i].ItemArray[1]);
                }
                adapter.Dispose();
                sqlCmd.Dispose();
                sqlCnn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Can not open connection ! ");
            }
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-13
    • 1970-01-01
    • 2010-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多