asp.net连接到外部数据库

时间:2019-05-19 19:50:37

标签: c# mysql asp.net

我有一个由Strato托管的外部数据库,我想将我的asp.net c#连接到该外部数据库,并在该数据库中插入一个新用户,但是在尝试建立连接时出现错误。该错误发生在con.open();处。谁能帮我这个?我是asp.net的新手,所以任何示例代码都可能会有所帮助。现在,我只是尝试建立与数据库的连接,并在单击“提交”按钮后将静态数据传输到表。

web.config

<connectionStrings>
<add name="ApplicationServices"
connectionString="server=rdbms.strato.de;database=DB33321; UID=abc123; password=pass123"
providerName="System.Data.SqlClient" />
</connectionStrings>

aspx.cs

protected void Button1_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ApplicationServices"].ToString());
    con.Open();

    SqlCommand cmd = new SqlCommand("insert into USER"+"(name)values(kim)");

    Response.Write("Registration success!");
    con.Close();
}

我收到的错误:

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称正确,并且已将SQL Server配置为允许远程连接。 (提供者:命名管道提供者,错误:40-无法打开与SQL Server的连接)

1 个答案:

答案 0 :(得分:1)

您可能发现了在没有意识到有多个ADO.Net提供程序的情况下连接数据库的示例。对于MySql,您需要一个nuget包:

https://www.nuget.org/packages/MySql.Data/

然后,您将更改连接字符串,以使提供者不是System.Data.SqlClient。我相信应该是MySql.Data.MySqlClient

接下来,您更改代码,以使其使用正确的类型。无论在何处看到“ Sql ...”,都将其更改为“ MySql ...”。例如:

SqlConnection变成MySqlConnection