如何传递参数值 [英] how to pass parameter value
本文介绍了如何传递参数值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在我的项目中,我对以下代码感到惊讶。我传递2个参数值来检查表中的记录。它给出了问题。
SqlCommand cmd = new SqlCommand( select * from progressive其中mem_id =' + v_mem_id + 'and dist_code =' + v_dist_code + ',con);
SqlParameter param = new SqlParameter();
param.ParameterName = @ v_mem_id;
cmd.Parameters.Add(param);
SqlParameter param1 = new SqlParameter();
param1.ParameterName = @ v_dist_code;
cmd.Parameters.Add(param1);
SqlDataReader reader = cmd.ExecuteReader();
if (reader.HasRows)
{
}
else
{
}
有人可以帮我解决。
解决方案
SqlCommand cmd = new SqlCommand( select * from progressive其中mem_id =' + v_mem_id + '和dist_code =' + v_dist_code + ',con);
SqlDataReader reader = cmd.ExecuteReader();
if (reader.HasRows)
{
}
其他
{
}
和我相信你在v_mem_id和v_dist_code中有一些值。正如我在评论中所说,你不需要传递任何参数,因为你的命令字符串已经包含了值。
SqlCommand cmd = new SqlCommand(select * from progressive where mem_id = @v_mem_id and dist_code = @ v_dist_code,con);
cmd.Parameters.AddWithValue(@ v_mem_id,v_mem_id);
cmd.Parameters.AddWithValue(@ v_dist_code,v_dist_code );
connection.Open()//你的SqlConnection
SqlDataReader dr = cmd.ExecuteReader();
while(dr.read())
{
//填充数据的对象使用dr.getValue(columnPosition)或dr [ColumnName]。ToString()
// dr.getString(columnPosition)或dr.getInt(columnPosition)根据您的数据类型
}
connection.Close()//关闭SqlConnection
//这就是全部,保持你的代码在try catch :)
In my project I am struck up at the following code. I am passing 2 parameter values to check a record in a table. It gives problem.
SqlCommand cmd = new SqlCommand("select * from progressive where mem_id= '" + v_mem_id + "' and dist_code='" + v_dist_code + "'", con);
SqlParameter param = new SqlParameter();
param.ParameterName = "@v_mem_id";
cmd.Parameters.Add(param);
SqlParameter param1 = new SqlParameter();
param1.ParameterName = "@v_dist_code";
cmd.Parameters.Add(param1);
SqlDataReader reader = cmd.ExecuteReader();
if (reader.HasRows)
{
}
else
{
}
Can someone help me out.
解决方案
SqlCommand cmd = new SqlCommand("select * from progressive where mem_id= '" + v_mem_id + "' and dist_code='" + v_dist_code + "'", con); SqlDataReader reader = cmd.ExecuteReader(); if (reader.HasRows) { } else { }
And i believe you have some values in v_mem_id and v_dist_code. As i said in comment, you dont need to pass any param as your commandstring contains the values already.
SqlCommand cmd = new SqlCommand("select * from progressive where mem_id= @v_mem_id and dist_code=@v_dist_code", con);
cmd.Parameters.AddWithValue("@v_mem_id", v_mem_id);
cmd.Parameters.AddWithValue("@v_dist_code", v_dist_code);
connection.Open() // your SqlConnection
SqlDataReader dr = cmd.ExecuteReader();
while(dr.read())
{
// Your Object filling with data use dr.getValue(columnPosition) or dr["ColumnName"].ToString()
// dr.getString(columnPosition) or dr.getInt(columnPosition) according your data type
}
connection.Close() // close SqlConnection
// thats all, keep your code in try catch :)
这篇关于如何传递参数值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文