c#中关于tableadapter如何传参数

2024-12-30 19:35:44
推荐回答(5个)
回答1:

DataSet ds=new DataSet();

StringBuilder builder=new StringBuilder ();

builder.Append("select * from table where aa=@aa and bb=@bb");

SqlParameter[] parms ={
new SqlParameter("@aa",SqlDbType.VarChar,50),
new SqlParameter("@bb",SqlDbType.Int)
};
//为aa赋值
parms[0].Value = "";
//为bb赋值
parms[1].Value = ;

using(SqlConnection conn =new SqlConnection ("连接字符串"))
{
try
{
conn,Open();
SqlCommand cmd = new SqlCommand(builder.ToString(),conn);
SqlDataAdapter adp = new SqlDataAdapter(cmd );
adp.Fill(ds);

//下面就是对查询的数据进行的处理了,数据在ds.Tables[0]这个数据表里面,数据类型为DataTable
}
catch
{
//错误处理
}
}

希望我的回答对你有帮助

回答2:

public void Test()
{
DataTable dt = new DataTable();//用于写数据
string sql = " SELECT SID, FLOWSETNUM, WORKSTATE, WAYSTATE, MEMO, SORTCODE FROM test WHERE (SORTCODE =@SORTCODE)";
SqlConnection conn = GetConnection();//获取连接
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add("@SORTCODE", SqlDbType.Int).Value = 123;
SqlDataAdapter adp = new SqlDataAdapter(cmd);
adp.Fill(dt);
}

注:SORTCODE = :sortcode “=:”是Delphi内传参数的写法

回答3:

SELECT SID, FLOWSETNUM, WORKSTATE, WAYSTATE, MEMO, SORTCODE
FROM test
WHERE (SORTCODE =@sortcode)

回答4:

你在后台写一个方法 接收一个参数 参数形式是你前台需要传递的形式 然后在方法里把语句写好 并返回出来 在需要调用SQL语句的地方调用 前台使用<#%Eval()%>来调用你写的方法 并传入参数
希望你能理解我的意思

回答5:

例如SQL如下:
select * from t1 where p1=@p1 and p2=@p2