【发布时间】:2015-10-21 17:51:35
【问题描述】:
我试图用这个连接字符串做一些声明,但 SqlCommand 不接受关键字“端口”,我的 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 !";
}
这是连接字符串,我用“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>
【问题讨论】:
-
查看这一行:
SqlCommand command = new SqlCommand("select * from DOADOR where idDOADOR =" + 2 + "", cnn);。虽然本身没问题,但它让我想知道您是否通常使用正确的参数化查询,或者您是否编写了非常不安全的代码。没有中间立场。