我尝试SELECT
在一张桌子上运行,MySql
但出现此错误:
Server Error in '/MyApp' Application.
Too many connections
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: MySql.Data.MySqlClient.MySqlException: Too many connections
源错误:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
堆栈跟踪:
[MySqlException (0x80004005): 连接太多] MySql.Data.MySqlClient.MySqlStream.ReadPacket() +517 MySql.Data.MySqlClient.NativeDriver.Open() +702 MySql.Data.MySqlClient.Driver.Open() +245 MySql .Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder 设置) +297 MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection() +18 MySql.Data.MySqlClient.MySqlPool.GetPooledConnection() +403 MySql.Data.MySqlClient.MySqlPool.TryToGetDriver( ) +228 MySql.Data.MySqlClient.MySqlPool.GetConnection() +106 MySql.Data.MySqlClient.MySqlConnection.Open() +1468
版本信息:Microsoft .NET Framework 版本:4.0.30319;ASP.NET 版本:4.0.30319.1
我用 .net 和 C# 在 iis 上运行它。知道如何解决这个问题吗?
编辑
我从我的服务器添加了一些代码:
这是例如我如何选择:
MySqlDataReader msdr;
MySqlConnection connect = new MySqlConnection(connectionStringMySql);
MySqlCommand cmd = new MySqlCommand();
string commandLine = "SELECT * FROM Table WHERE active=1";
commandLine = commandLine.Remove(commandLine.Length - 3);
cmd.CommandText = commandLine;
cmd.Connection = connect;
cmd.Connection.Open();
msdr = cmd.ExecuteReader();
while (msdr.Read())
{
//Read data
}
msdr.Close();
cmd.Connection.Close();
这就是我删除的方式:
MySqlConnection connect = new MySqlConnection(connectionStringMySql);
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = connect;
cmd.Connection.Open();
string commandLine = @"DELETE FROM Table WHERE id=@id;";
cmd.CommandText = commandLine;
cmd.Parameters.AddWithValue("@id", slotId);
cmd.ExecuteNonQuery();
cmd.Connection.Close();
这就是我插入的方式:
MySqlConnection connect = new MySqlConnection(connectionStringMySql);
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = connect;
cmd.Connection.Open();
string commandLine = @"INSERT INTO Table (id, weekday, start, end) VALUES" +
"(@ id, @weekday, @start, @end);";
cmd.CommandText = commandLine;
cmd.Parameters.AddWithValue("@ id", item.babysitterid);
cmd.Parameters.AddWithValue("@weekday", item.weekday);
cmd.Parameters.AddWithValue("@start", new TimeSpan(item.starthour, item.startmin, 0));
cmd.Parameters.AddWithValue("@end", new TimeSpan(item.endhour, item.endmin, 0));
cmd.ExecuteNonQuery();
long id = cmd.LastInsertedId;
cmd.Connection.Close();
return id;