如何使用此代码连接到本地主机?

问题描述 投票:0回答:4

我对这段 C# 代码有疑问。我需要将其连接到 mysql、localhost 数据库,请给我正确的代码以 [connetionString = "Data Source=ServerName;Initial Catalog=root;User ID=root;Password="; ] 连接到 localhost。

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 ! ");
            }
        }
    }
}
c# mysql localhost
4个回答
0
投票

它应该看起来更像这样:

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 的方式。


0
投票

看来你已经标记了MySql连接,所以最好你想使用mysql连接。您可以在这里下载/安装:http://dev.mysql.com/downloads/connector/net/

使用 try-catch-finally 方法也是明智的。这样,当连接打开时,发生一些异常,连接随后总是会关闭。

作为另一项补充,您可以将连接字符串放在

App.Config
Web.Config
中,这样您的所有文件中都可以使用连接字符串,并且只需在一个位置进行调整。

希望这对你有帮助

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();
            }
        }
    }
}

0
投票

您在连接中使用了

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 驱动程序版本。

更改数据库、UID 和密码值。


0
投票

这是您需要的代码

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");
            }

    }
© www.soinside.com 2019 - 2024. All rights reserved.