如何验证您是否已连接到C#中的MySQL数据库?

时间:2016-06-29 03:08:00

标签: c# mysql wpf

我在C#中添加了MySQL服务器的引用。我以为我的代码是正确的。我知道连接值适合测试。这是我的错误:

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

我的WPF文本框和按钮:

<TextBox x:Name="textError" HorizontalAlignment="Left" Height="35" Margin="125,39,0,0" TextWrapping="Wrap" Text="If Error this will show it" VerticalAlignment="Top" Width="240"/>
    <TextBox x:Name="textUser" HorizontalAlignment="Left" Height="23" Margin="125,118,0,0" TextWrapping="Wrap" Text="Username" VerticalAlignment="Top" Width="120"/>
    <TextBox x:Name="textPassword" HorizontalAlignment="Left" Height="23" Margin="125,168,0,0" TextWrapping="Wrap" Text="Password" VerticalAlignment="Top" Width="120"/>

我的C#代码:

namespace namespace1
{
 public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();

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

    private void button_Click(object sender, RoutedEventArgs e)
    {
        if (textUser.Text != "" & textPassword.Text != "")
        {
            server = "localhost";
            database = "test";
            uid = "username";
            password = "password";
            string connectionString;
            connectionString = "SERVER=" + server + ";" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
            connection = new MySqlConnection(connectionString);
            string queryText = @"SELECT Count(*) FROM Table1 
                         WHERE username = @Username AND password = @Password";

            using (SqlConnection cn = new SqlConnection(connectionString)) 
            using (SqlCommand cmd = new SqlCommand(queryText, cn))
            {
                cn.Open();
                cmd.Parameters.AddWithValue("@Username", textUser.Text);
                cmd.Parameters.AddWithValue("@Password", textPassword.Text);
                int result = (int)cmd.ExecuteScalar();
                if (result > 0)
                    MessageBox.Show("Logged In!");
                else
                    MessageBox.Show("User Not Found!");
            }
            }
        } 
    }
}

2 个答案:

答案 0 :(得分:1)

访问名为Download Connector/Net的MySQL下载页面并继续显而易见。注意找出最近的下载,因为它会老化。

使用适当的 MySQL类

using MySql.Data.MySqlClient;

string connString = @"server=localhost;userid=drew;password=OpenSesame;database=stackoverflow";

        long lRet = 0;
        using (MySqlConnection lconn = new MySqlConnection(connString))
        {
            lconn.Open();
            using (MySqlCommand cmd = new MySqlCommand())
            {
                cmd.Connection = lconn;
                cmd.CommandText = @"select count(*) as theCount from batchQMetricsToUpdate where status=1";
                lRet = (long)cmd.ExecuteScalar();
            }
        }
        return(lRet);

添加参考资料截图:

enter image description here

答案 1 :(得分:0)

你可以这样做:

document.getElementsByClassName("showMoreNew")[0].click();

要获取完整的代码列表:

using(SqlConnection connection = new MySqlConnection(connectionString))
{
    try
    {
        conn.Open();
    }
    catch(SqlException ex)
    {
        switch(ex.Number) 
        { 
            case 18456: // Can't login
                // Do something
                break;
            default:
                break;
        } 
    }
}
相关问题