Sql server 2005 SQL Server动态SQL
我正在执行动态SQLSql server 2005 SQL Server动态SQL,sql-server-2005,Sql Server 2005,我正在执行动态SQL sqlQuery = " SELECT "; sqlQuery += _Allowed + " , "; sqlQuery += " + cast( "; sqlQuery += " _ID as nvarchar ) "; sqlQuery += " FROM "; sqlQuery += " TBL_SUCCESS "; 当我执行它时,假设在单个列中返回公共的分隔值,如2,4,5 相反,它在单独的列中返回值 我的MyDataTable假设要填充 Column1
sqlQuery = " SELECT ";
sqlQuery += _Allowed + " , ";
sqlQuery += " + cast( ";
sqlQuery += " _ID as nvarchar ) ";
sqlQuery += " FROM ";
sqlQuery += " TBL_SUCCESS ";
当我执行它时,假设在单个列中返回公共的分隔值,如2,4,5
相反,它在单独的列中返回值
我的MyDataTable假设要填充
Column1
2,4,5
但它很流行
column1 column2 column3
2 4 5
如何获得输出?需要查看
\u Allowed
的值才能知道还有什么发生,但至少需要在逗号周围加引号,并将其连接到SQL语句中,如下所示:
sqlQuery += _Allowed + " + ' , ' ";
与其他字符串不同,sql字符串没有什么神奇之处。如果将其打印出来,就像打印任何其他字符串一样,您将看到发送到数据库的最终字符串。从这里,您可能会发现您想要修改什么,以使它看起来像您想要的那样,并且一旦您知道了这一点,您可能也会发现如何在动态sql字符串中实现这一点。