Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C:MySQL连接字符串和SqlCommand不接受关键字端口_C#_Mysql_Port - Fatal编程技术网

C# C:MySQL连接字符串和SqlCommand不接受关键字端口

C# C:MySQL连接字符串和SqlCommand不接受关键字端口,c#,mysql,port,C#,Mysql,Port,我试图用这个connectionstring做一些声明,但是SqlCommand没有接受关键字“Port”,我的MySql没有使用默认端口,所以我需要这个来连接。有人能帮我吗 SqlConnection cnn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["MySQLConnectionExterno"].ConnectionString); SqlCommand command

我试图用这个connectionstring做一些声明,但是SqlCommand没有接受关键字“Port”,我的MySql没有使用默认端口,所以我需要这个来连接。有人能帮我吗

SqlConnection cnn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["MySQLConnectionExterno"].ConnectionString);

SqlCommand command = new SqlCommand("select * from DOADOR where idDOADOR =" + 2 + "", cnn);
try
{
    cnn.Open();
    lblStatus.Text = "Connection Open !";
    SqlDataReader reader = command.ExecuteReader();
    while (reader.Read())
    {
        lbNome.Text = reader["nome"].ToString();
    }
    cnn.Close();
}
catch (Exception ex)
{
    lblStatus.Text = "Can not open connection !";
}
这是connectionstring,我用XXXX更改了信息

<connectionStrings>
    <add name="MySQLConnectionExterno" connectionString="Server=XXXXX.com;Port=41890;user id=XXXXX;password=XXXXX;persist security info=True;database=XXXXXX" providerName="MySql.Data.MySqlClient"/>
  </connectionStrings>

您需要下载MySql连接器并使用该库而不是SqlClient库。您可以下载连接器

然后,您需要安装它,将MySql.Data.dll添加到项目引用中,并将适当的using指令添加到源文件的顶部

using MySql.Data.MySqlClient;
在此之后,您可以使用MySql客户端类和MySqlConnection来理解连接字符串中的Port关键字

MySqlConnection cnn = new MySqlConnection(......)
....
MySqlCommand command = new MySqlCommand(.....)
....
MySqlDataReader reader = command.ExecuteReader();

请看这一行:SqlCommand=newsqlcommandselect*from DOADOR,其中idDOADOR=+2+,cnn;。虽然这本身没什么问题,但它让我怀疑您是否通常使用正确的参数化查询,还是编写了非常不安全的代码。没有中间立场。谢谢你,我已经试过了,但是没有使用MySqlDataReader,我的错误是kkk。