繁体   English   中英

Visual Studio认为我要连接到SQL Server而不是MySQL?

[英]Visual Studio thinks I want to connect to SQL Server instead of MySQL?

我正在尝试在Visual Studio 2017中建立与MySQL数据库的连接。到目前为止,使用向导和数据集进行连接已经非常正常,但是尝试仅使用代码进行连接会产生以下错误:

错误40:无法打开与SQL Server的连接

可以预料,谷歌搜索此错误会带来针对使用SQL Server的用户的结果,而我不是。 我在这里想念什么? 我知道我的数据库已启动并正在运行,因为我程序的所有其他功能仍然有效。

using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["GenericDB.Properties.Settings.GenericDBConnectionString"].ToString()))
{
    try
    {
        string query = "SELECT name, siteID FROM site";
        SqlDataAdapter da = new SqlDataAdapter(query, conn);
        conn.Open();
        DataSet ds = new DataSet();
        da.Fill(ds, "site");
        cmbOrderReceiving.DisplayMember = "name";
        cmbOrderReceiving.ValueMember = "siteID";
        cmbOrderReceiving.DataSource = ds.Tables["site"];
    }

您正在使用Sql Client库中的类,并且这些类仅适用于Sql Server。 在安装MySql的连接器之后,您应该在代码文件中添加适当的using指令

using MySql.Data.MySqlClient;

然后使用MySqlXXXX更改对SqlXXXX类的每个引用

using (MySqlConnection conn = new MySqlConnection(.....))
{
    try
    {
        string query = "SELECT name, siteID FROM site";
        MySqlDataAdapter da = new MySqlDataAdapter(query, conn);
        conn.Open();
        DataSet ds = new DataSet();
        da.Fill(ds, "site");
        cmbOrderReceiving.DisplayMember = "name";
        cmbOrderReceiving.ValueMember = "siteID";
        cmbOrderReceiving.DataSource = ds.Tables["site"];
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM