【问题标题】:Connection string to connect to MySql database?连接到 MySql 数据库的连接字符串?
【发布时间】:2016-03-18 18:03:09
【问题描述】:

我正在尝试将 MySql 数据库连接到我的表单。我通过右键单击我的数据库连接并转到属性来获取连接字符串。

connection.ConnectionString = "server=localhost;user id=root;database=island_dealership;"+
       "persistsecurityinfo=True;allowuservariables=True";

下面是错误图片和完整代码。

car.cs 类:这里我正在尝试连接到数据库。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace DatabaseProject
{
    public partial class Car : Form
    {
        MySqlConnection connection = new MySqlConnection();
        MySqlConnection cmd;
        public Car()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            try
            {
                connection.ConnectionString = "server=localhost;user id=root;database=island_dealership;persistsecurityinfo=True;allowuservariables=True";//Connection String....
                connection.Open();
                MessageBox.Show("Connected to MySql database");
            }
            catch(Exception e1)
            {
                MessageBox.Show("Connection failed Due to " + e1.ToString());
            }

        }

        private void submitCar_Click(object sender, EventArgs e)
        {

        }
    }
}

【问题讨论】:

  • 您没有指定密码。 http://www.connectionstrings.com/mysql/
  • 连接字符串缺少密码。您必须添加密码。它应该是这样的“数据源=ServerName\InstanceName;初始目录=DatabaseName;User Id=SQLLoginName;Password=SQLLoginPassword;
  • 不要使用root用户。

标签: c# mysql connection-string


【解决方案1】:

它可能想知道密码;)您的消息框是这样写的:

使用密码:否...拒绝访问...

像这样:

server=localhost;uid=root;pwd=YOURPASSWORDHERE;database=YOURDATABASENAMEHERE;

【讨论】:

  • 我正在使用static string connstring = @"server=my.live.ip;userid=user;password=123;database=db_name;port=3306";,但我仍然收到Authentication to host 'my.live.ip' for user 'user' using method 'mysql_native_password' failed with message: Access denied for user 'user'@'202.xxx.xxx.xxx' (using password: NO)
【解决方案2】:

使用下面的代码或参考这个link

private MySqlConnection connection;
private string server;
private string database;
private string uid;
private string password;

//Constructor
public DBConnect()
{
    Initialize();
}

//Initialize values
private void Initialize()
{
    server = "localhost";
    database = "connectcsharptomysql";
    uid = "username";
    password = "password";
    string connectionString;
    connectionString = "SERVER=" + server + ";" + "DATABASE=" + 
    database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";

    connection = new MySqlConnection(connectionString);
}

//open connection to database
private bool OpenConnection()
{
}

//Close connection
private bool CloseConnection()
{
}

//Insert statement
public void Insert()
{
}

//Update statement
public void Update()
{
}

//Delete statement
public void Delete()
{
}

//Select statement
public List <string> [] Select()
{
}

//Count statement
public int Count()
{
}

//Backup
public void Backup()
{
}

//Restore
public void Restore()
{
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-31
    • 1970-01-01
    • 2013-12-14
    • 2019-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多