C# winform 文本框去逗号取值传到SQL语句问题
如图上图。如果我在文本框中输入012001,012003后台代码textbox的值去掉中间逗号需要传到SQL语句中select*fromordtbwhereordid='...
如图上图。 如果我在文本框中输入012001,012003
后台代码textbox的值去掉中间逗号
需要传到SQL语句中select * from ordtb where ordid='012001' or ordid= '012003'
这个代码怎么写 求大神指点!谢谢! 展开
后台代码textbox的值去掉中间逗号
需要传到SQL语句中select * from ordtb where ordid='012001' or ordid= '012003'
这个代码怎么写 求大神指点!谢谢! 展开
4个回答
展开全部
string txt=txtInput.Text();
string[] keys = txt.Split(',');
string ids = string.Format("'{0}'", string.Join("','", keys));//添加单引号拼接ID,此时格式为:0001','0002','0003
//使用SQL 的IN语句,注意上面的格式前后还缺少单引号,需要补全
string sql=string.Format("select *from ordtb where ordid in('{0}')", ids);
//TODO:执行查询
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
private void button1_Click(object sender, EventArgs e)
{
string txt = this.textBox1.Text;
string s = @"select * from ordtb where ";
string[] ss = txt.Split(new char[] { ',', ',' },
StringSplitOptions.RemoveEmptyEntries);
int len = ss.Length - 1;
for (int i = 0; i <= len; i++)
{
s += string.Format("ordid = '{0}' ", ss[i]);
if (i < len)
s += " or ";
}
MessageBox.Show(s);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string [] strArray=txtCode.Text.Trim().Split(',');//这里没有验证用户输入自己看情况是否需要
string strWhere=string.Empty;
for(int i=0;i<strArray.Length;i++)
{
strWhere+=“ordid='”+strArray[i]+"'"+" or";
}
strWhere=strWhere.SubString(0,strWhere.Length-2);
string sql="select * from ordtb where "+strWhere;
string strWhere=string.Empty;
for(int i=0;i<strArray.Length;i++)
{
strWhere+=“ordid='”+strArray[i]+"'"+" or";
}
strWhere=strWhere.SubString(0,strWhere.Length-2);
string sql="select * from ordtb where "+strWhere;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大概这个样子吧:"select ... ordid in ('"+ textbox.Text.Replace(",","','")+"')";
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询