C# 字符串拼接Sql语句复杂的取变量值问题....

C# 字符串拼接Sql语句复杂的取变量值问题....,第1张

//假设有两个变量,是由用户赋值的

string a1=null;       //变量1

string a2=null;       //变量2

string strSql=null;   //SQL查询语句

string strSql_add=null;  //SQL查询语句的条件部分

strSql="select  from Tb_Nm ";

 

if(a1!=null && a1!="")

{

    //表示该变量1不为空

    if(strSql_add!="" && strSql_add!=null)

    {

       //表示条件部分有字符,此时查询条件为

       strSql_add+=" and a1='"+a1+"' ";

    }

    else

    {

       //表示条件部分没有字符,此时查询条件为

       strSql_add+=" where a1='"+a1+"' ";

    }

}

if(a2!=null && a2!="")

{

    //表示该变量2不为空

    if(strSql_add!="" && strSql_add!=null)

    {

       //表示条件部分有字符,此时查询条件为

       strSql_add+=" and a2='"+a2+"' ";

    }

    else

    {

       //表示条件部分没有字符,此时查询条件为

       strSql_add+=" where a2='"+a2+"' ";

    }

}

//最后把条件语句和SQL查询拼接一起

strSql=strSql+strSql_add;

//试一下吧!!有问题再追问我吧

sql

=

"select

from"

&

mc

'怎么拼对吗?

这个是正确的。

set

rs

=

connexecute("select

from

&

mc")

‘怎么拼接对吗?

这个是不对的。这个里面的sql语句建议赋值给一个变量,然后直接调用变量,当然也可以这么写,不过要注意格式:set

rs

=

connexecute("select

from

"&

mc)应该是这个样子的,不知道有没有记错,你试试看。

不管是游标还是游标变量都无法获取其长度。如果想把某一个列拼接在一起可以用WM_cancat函数。

语句: select wm_concat(ename) from emp;

结果:SMITH,ALLEN,WARD,JONES,MARTIN,BLAKE,CLARK,SCOTT,KING,TURNER

SELECT bid ,

STUFF(( SELECT ',' + LTRIM(RTRIM(Name))

FROM [表] a

WHERE aid = bid

FOR

XML PATH('')

), 1, 1, '') AS 'Name' ,

STUFF(( SELECT ',' + LTRIM(RTRIM(Age))

FROM [表] a

WHERE aid = bid

FOR

XML PATH('')

), 1, 1, '') AS 'Age'

FROM dbo[表] b

GROUP BY id

以上就是关于C# 字符串拼接Sql语句复杂的取变量值问题....全部的内容,包括:C# 字符串拼接Sql语句复杂的取变量值问题....、sql查询语句怎么拼接字符串、我想获取游标的长度,在sql语句中拼接 OR 时,如果是 最后一个值 就不拼接上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9480553.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存