hi all,
I have windows application in dot net framework 2.0. I used mysql database with MySQL Workbench 6.0 CE and MySQL Connector Net 6.7.4 I have MySQlHelper Class for database related operation.
The Problem is that when I pass 9 parameter to store procedure through MySqlhelper class methods it works fine.But when I try to pass more than 9 parameters Mysqlhelper class code in one method MySqlCommandBuilder.DeriveParameters(Mysqlcommand cmd) throw Exception.'Unhandled type encountered'
In Store Procedure there are exact 44 parameters required to passed. What could be the possible issue?
pls check the code below :
private static MySqlParameter[] DiscoverSpParameterSet(string spName, bool includeReturnValueParameter)
{
using (MySqlConnection cn = new MySqlConnection(SqlHelper.ConString))
{
using (MySqlCommand cmd = new MySqlCommand(spName, cn))
{
cn.Open();
cmd.CommandType = CommandType.StoredProcedure;
MySqlCommandBuilder.DeriveParameters(cmd);
if (!includeReturnValueParameter)
{
}
MySqlParameter[] discoveredParameters = new MySqlParameter[cmd.Parameters.Count];
MySqlParameter[] abc = new MySqlParameter[cmd.Parameters.Count];
cmd.Parameters.CopyTo(discoveredParameters, 0);
return discoveredParameters;
}
}
}
at this point
private static MySqlParameter[] DiscoverSpParameterSet(string spName, bool includeReturnValueParameter)
{
using (MySqlConnection cn = new MySqlConnection(SqlHelper.ConString))
{
using (MySqlCommand cmd = new MySqlCommand(spName, cn))
{
cn.Open();
cmd.CommandType = CommandType.StoredProcedure;
MySqlCommandBuilder.DeriveParameters(cmd);
if (!includeReturnValueParameter)
{
}
MySqlParameter[] discoveredParameters = new MySqlParameter[cmd.Parameters.Count];
MySqlParameter[] abc = new MySqlParameter[cmd.Parameters.Count];
cmd.Parameters.CopyTo(discoveredParameters, 0);
return discoveredParameters;
}
}
}
At this point error throws :
MySqlCommandBuilder.DeriveParameters(cmd);
Here i m calling sp :
intResult = SqlHelper.ExecuteNonQuery("SP_Update_CampaignMaster", objEcampaignmaster.CampaignId,
objEcampaignmaster.CampaignName,
objEcampaignmaster.CallCenterId,
objEcampaignmaster.Type,
objEcampaignmaster.IsVoiceChannel,
objEcampaignmaster.IsAgentInvolved,
objEcampaignmaster.CallAllocation,
objEcampaignmaster.Status,
objEcampaignmaster.FlowId,
objEcampaignmaster.ProspectBaseId,
objEcampaignmaster.BusyFileName1,
objEcampaignmaster.BusyFileName2,
objEcampaignmaster.MSNNo,
objEcampaignmaster.HoldTime,
objEcampaignmaster.ServiceMin,
objEcampaignmaster.ServiceMax,
objEcampaignmaster.TotalSkillGroup,
objEcampaignmaster.PacingRatio,
objEcampaignmaster.URL,
objEcampaignmaster.RealTimeValidation,
objEcampaignmaster.TransferType,
objEcampaignmaster.MoveCallBusy,
objEcampaignmaster.MapName,
objEcampaignmaster.CallReCycling,
objEcampaignmaster.ProspectType,
objEcampaignmaster.QueryFile,
objEcampaignmaster.AutoUpload,
objEcampaignmaster.RefreshDuration,
objEcampaignmaster.AgentStTime,
objEcampaignmaster.AgentEndTime,
objEcampaignmaster.CallerId,
objEcampaignmaster.DSNName,
objEcampaignmaster.UploadType,
objEcampaignmaster.RefreshTime,
objEcampaignmaster.RootDirectory,
objEcampaignmaster.Language,
objEcampaignmaster.URL1,
objEcampaignmaster.AvgCallTime,
objEcampaignmaster.DateSortType,
objEcampaignmaster.CampCallType,
objEcampaignmaster.EmailId,
objEcampaignmaster.CampDialType,
objEcampaignmaster.FwEmailId);//,objEcampaignmaster.SMediaId
thank you.