【问题标题】:How to access the localhost connection to MySQL database through c#?如何通过c#访问本地主机连接到MySQL数据库?
【发布时间】:2018-10-30 15:15:49
【问题描述】:

在我的 C# 代码中,我的 App.config 中有这个

<add name="SampleDB" connectionString="Server=.;Database=Sample;Trusted_Connection=True;" providerName="System.Data.SqlClient"/>

我打开 MySQL 命令客户端,输入密码,然后通过输入 CREATE DATABASE SAMPLE; 创建示例数据库 但是,我无法连接到数据库。 "Server=.之后需要指定SQL的实例吗? 还是我需要以其他方式打开连接?

【问题讨论】:

  • 在服务器字段值中写入数据库服务器的名称,在您的情况下为 mysql,例如“Server=locahost:8080;...”
  • @Aqib 我在 3306 上运行。我试过了,还是不行。
  • 您正在使用与 Windows 身份验证一起使用的“Trusted_Connecion=True”,但在 mysql 上不可用,在连接字符串中提供用户 ID 和密码,例如“UID=USER;PWD=PASS;跨度>

标签: c# mysql asp.net


【解决方案1】:

收藏ConnectionStrings.com。该站点为所有类型的数据库和驱动程序版本(包括 MySQL)提供所有类型的连接字符串信息。

Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;
Pwd=myPassword;

【讨论】:

  • 3306 是 MySQL 的默认值
【解决方案2】:

这里放一段代码,从 MySqlConnection 对象的声明开始,这样我们就可以更好地理解为什么它没有连接,因为上面的连接字符串答案已经是正确的。如果你使用默认设置安装 MySQL,它应该是:

   <appSettings>
        <add key="MyConnectionSettings" value="Server=127.0.0.1;Port=3306;Database=myDataBase;Uid=root or user;
    Pwd=yourpassword" />


string connectionFromConfig = ConfigurationManager.AppSettings["MyConnectionSettings"];
using(MySqlConnection con = new MySqlConnection(connectionFromConfig)){
con.Open();
   string sql = "SELECT *from yourtable";
 MySqlCommand cmd = new MySqlCommand(sql, con );
        MySqlDataReader rdr = cmd.ExecuteReader();

        while (rdr.Read())
        {
            Console.WriteLine(rdr[0]+" -- "+rdr[1]);
        }
        rdr.Close();
}

【讨论】:

    猜你喜欢
    • 2019-06-10
    • 2013-01-15
    • 2012-04-18
    • 2013-01-30
    • 1970-01-01
    • 2012-05-23
    • 1970-01-01
    • 1970-01-01
    • 2017-05-10
    相关资源
    最近更新 更多