以后代码产生末提供参数@vid的错误,
我把ODBC改成SQL,是正常的。希望大家帮忙找下问题, 谢谢~!
public string z015( string vid, out string vgrbm, out string vkh )
{
OdbcConnection conn = new OdbcConnection( ConfigHandler.GetConfig().OdbcConnStr ); OdbcParameter[] parameters = {
new OdbcParameter( "@vid", OdbcType.VarChar, 30 ),
new OdbcParameter( "@vgrbm", OdbcType.VarChar, 20 ),
new OdbcParameter( "@vkh", OdbcType.VarChar, 20 )
}; parameters[0].Value = vid;
parameters[1].Direction = ParameterDirection.Output;
parameters[2].Direction = ParameterDirection.Output; OdbcCommand command = new OdbcCommand(); try
{
conn.Open();
command.Connection = conn;
command.CommandType = CommandType.StoredProcedure;
foreach( OdbcParameter parameter in parameters )
command.Parameters.Add( parameter );
command.CommandText = "z015";
command.ExecuteNonQuery();
}
catch( System.Exception ex )
{
throw ex;
}
finally
{
conn.Close();
} vgrbm = parameters[1].Value.ToString();
vkh = parameters[2].Value.ToString();
return "";
}
我把ODBC改成SQL,是正常的。希望大家帮忙找下问题, 谢谢~!
public string z015( string vid, out string vgrbm, out string vkh )
{
OdbcConnection conn = new OdbcConnection( ConfigHandler.GetConfig().OdbcConnStr ); OdbcParameter[] parameters = {
new OdbcParameter( "@vid", OdbcType.VarChar, 30 ),
new OdbcParameter( "@vgrbm", OdbcType.VarChar, 20 ),
new OdbcParameter( "@vkh", OdbcType.VarChar, 20 )
}; parameters[0].Value = vid;
parameters[1].Direction = ParameterDirection.Output;
parameters[2].Direction = ParameterDirection.Output; OdbcCommand command = new OdbcCommand(); try
{
conn.Open();
command.Connection = conn;
command.CommandType = CommandType.StoredProcedure;
foreach( OdbcParameter parameter in parameters )
command.Parameters.Add( parameter );
command.CommandText = "z015";
command.ExecuteNonQuery();
}
catch( System.Exception ex )
{
throw ex;
}
finally
{
conn.Close();
} vgrbm = parameters[1].Value.ToString();
vkh = parameters[2].Value.ToString();
return "";
}
确信存储过程里有@vid 参数
通过ODBC连SQL server就出错以上错误~