mysql 如何连接到localhost与此代码?

vd2z7a6w  于 2023-04-04  发布在  Mysql
关注(0)|答案(4)|浏览(137)

我有一个问题与此c#代码.我需要将其连接到mysql,localhost数据库,请给予我正确的代码[connetionString =“数据源=ServerName;int root;用户ID=root;Password=";]连接到本地主机。

using System;
using System.Windows.Forms;
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 cnn ;
            **connetionString = "Data Source=ServerName;Initial Catalog=localhost;User ID=root;Password=";** 
            cnn = new SqlConnection(connetionString);
            try
            {
                cnn.Open();
                MessageBox.Show ("Connection Open ! ");
                cnn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Can not open connection ! ");
            }
        }
    }
}
2admgd59

2admgd591#

它应该看起来更像这样:

connetionString = "Data Source=localhost;Initial Catalog=<Name of the Database>;User ID=root;Password=";

数据源属性是你放置网络位置的地方,初始目录是数据库的名称(在mysql中)。
编辑:
然而,我相信你会需要mysql库,我注意到你一开始不是using。从这里获取它们:http://dev.mysql.com/downloads/connector/net/
Data.SqlClient命名空间通常是连接到MSSQL的方式。

hjzp0vay

hjzp0vay2#

看来你已经标记了MySql连接,所以最好你想使用mysql连接。你可以在这里下载/安装:http://dev.mysql.com/downloads/connector/net/
另外,使用try-catch-finally方法也是明智的。这样当连接打开时,发生了一些异常,连接总是会在之后关闭。
另外,您可以将connectionstring放在App.ConfigWeb.Config中,这样您就可以在所有文件中使用connectionstring,并且只需在一个地方调整它。
我希望这对你有帮助

using System;
using System.Windows.Forms;
using MySql.Data.MySqlClient; //using the mysql dll

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

        private void button1_Click(object sender, EventArgs e)
        {
            string connectionString = "Data Source=localhost;Initial Catalog=myDb;User ID=MyUser;Password=MyPass";
            MySqlConnection cnn = new MySqlConnection(connectionString);
            try
            {
                cnn.Open();
                MessageBox.Show("Connection Open ! ");
            }
            catch (Exception ex)
            {
                MessageBox.Show("Can not open connection ! ");
                MessageBox.Show(ex.Message); //shows what error actually occurs
            }
            finally
            {
                cnn.Close();
            }
        }
    }
}
gpfsuwkq

gpfsuwkq3#

你在你的连接中使用了System.Data.SqlClient,我认为它是用于SQL Server的。你的连接字符串也不是用于MySQL数据库的。试试这个。

using System.Data.Odbc;

string connectionString = "DRIVER={MySQL ODBC 5.1 Driver}; SERVER=localhost;  
DATABASE=dbname; UID=myuserid; PASSWORD=mypassword;OPTION=3; POOLING=false;";

OdbcConnection DBCon = new OdbcConnection(connectionString);
if (DBCon.State == ConnectionState.Open)
{
    DBCon.Close();
}
DBCon.Open();
MessageBox.Show ("Connection Open ! ");
DBCon.Close();

根据所使用的内容更改ODBC驱动程序版本。
更改DATABASE、UID和PASSWORD值。

oknwwptz

oknwwptz4#

这是你需要的代码

private void btnConnect_Click(object sender, EventArgs e)
    {
        string MyConStr = "Server=localhost;Database=YourDB;Username=YourUsername;Password=YourPassword";

        MySqlConnection conn = new MySqlConnection(MyConStr);

        conn.Open();

        if (conn.State == ConnectionState.Open)
        {
            MessageBox.Show("Connection Opened Successfully");
            conn.Close();
        }
        else
            {
              MessageBox.Show("Error Connecting to DataBase");
            }

    }

相关问题