Sql 从查询中获取列名,使用单引号发出
我试图使用sys.dm_exec_descripe_first_result_set示例来获取列名,这在简单查询中非常有效,但是当我有一个带单引号的查询时,它就不起作用了 有人有什么建议来回避这个问题吗Sql 从查询中获取列名,使用单引号发出,sql,sql-server,Sql,Sql Server,我试图使用sys.dm_exec_descripe_first_result_set示例来获取列名,这在简单查询中非常有效,但是当我有一个带单引号的查询时,它就不起作用了 有人有什么建议来回避这个问题吗 SELECT name FROM sys.dm_exec_describe_first_result_set ('Select [Current Status] = CASE WHEN Matter.ArchiveStatus = 0 THEN 'Live' WHEN Matter.Arc
SELECT name
FROM
sys.dm_exec_describe_first_result_set
('Select [Current Status] = CASE WHEN Matter.ArchiveStatus = 0 THEN 'Live' WHEN Matter.ArchiveStatus IS NULL THEN 'Live' WHEN Matter.ArchiveStatus = 1 THEN 'Pending Deletion' WHEN Matter.ArchiveStatus = 2 THEN 'Archived' ELSE 'Unknown' END FROM Matter', NULL, 0)
您可以使用另一个单引号来转义原始单引号。像这样:
('Select [Current Status] = CASE WHEN Matter.ArchiveStatus = 0 THEN ''Live''...
您可以使用另一个单引号来转义原始单引号。像这样:
('Select [Current Status] = CASE WHEN Matter.ArchiveStatus = 0 THEN ''Live''...
如何创建一个存储过程以正常的参数化方式利用它? e、 g:
如何创建一个存储过程以正常的参数化方式利用它? e、 g:
这是有效的谢谢,但它给了我其他问题,我正在将其构建到一个API中,因此我希望能够在多个地方使用此查询,如果我必须使用双引号,它将作为“正常”查询中断。对不起,我无法准确理解情况;但是,如果您使用占位符为字符串定义语句,然后为单个值应用逻辑(因此,如果它们在其中,则将引号加倍?)这是可行的,谢谢,但它给了我其他问题,我正在将其构建到API中,因此我希望能够在多个位置使用此查询,如果我不得不使用双引号,它将作为一种“正常”的质问而中断,我无法准确地理解情况;但是,如果您使用占位符为字符串定义语句,然后为单个值应用逻辑(因此,如果引号在其中,则将引号加倍?)