在Asp.net mvc中,我尝试打开一个sql连接,但它总是给我无效的连接 fatal error 。 这是我的以下代码:
在 Web.config 中:
<connectionStrings>
<add name="test" connectionString="Data Source=test,3306;Initial catalog=test;User Id=xxxxx;password=xxxx;Trusted_Connection=False;Encrypt=True;" providerName="System.Data.SqlClient" />
在 Controller 类中:
var sql = "select * from users where email = \"" + model.Email + "\" and password = \"" + model.Password +\"";
System.Diagnostics.Debug.WriteLine("return url = "+sql);
string connectionString = ConfigurationManager.ConnectionStrings["test"].ConnectionString;
using (var conn = new SqlConnection(connectionString))
{
try
{
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader dr = cmd.ExecuteReader();
dr.Read();
System.Diagnostics.Debug.WriteLine("output = " + dr.HasRows);
conn.Close();
}
catch(Exception e)
{
System.Diagnostics.Debug.WriteLine("exception " + e.ToString());
}
}
它在 conn.open() 上给了我以下异常;
System.InvalidOperationException: Internal connection fatal error. Error state: 18
任何人都可以建议我的代码中有什么问题吗?
最佳答案
public MySqlConnection GetMySqlConnection(string dataBase, string server,uint port,string userID,string pass)
{
MySqlConnectionStringBuilder myBuilder = new MySqlConnectionStringBuilder();
myBuilder.Database = dataBase;
myBuilder.Server = server;
myBuilder.Port = port;
myBuilder.UserID = userID;
myBuilder.Password = pass;
MySqlConnection myconn = new MySqlConnection(myBuilder.ConnectionString);
myconn.Open();
return myconn;
}
描述: 您应该使用 MySql 而不是 MS SQL。 安装 MySql 连接器网络和 MySql for Visual Studio(“只需 google 即可”)
安装后:
您必须在引用中添加 MySql.Data
在您的类(class)中:使用 MySql.Data.MySqlClient;
关于mysql - 打开连接时发生内部连接 fatal error ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33513976/