存储过程中如果有临时表,或者有复杂的业务逻辑,此时,要生成DataSet会失败。
CREATE PROCEDURE [dbo].[usp]
AS
BEGIN
SET NOCOUNT ONSELECT *
INTO #temptable
FROM customsSELECT *
FROM #temptable
END
处理方法:
1 首先修改存储过程,select * into _temp from ….., 运行存储过程,生成一个中间表(_temp) ,
ALTER PROCEDURE [dbo].[usp]
AS
BEGIN
SET NOCOUNT ONSELECT *
INTO #temptable
FROM customsSELECT *
INTO _temp
FROM #temptable
END
2 修改存储过程为 Select * from _temp,其他代码都注释掉。
ALTER PROCEDURE [dbo].[usp]
AS
BEGIN
SET NOCOUNT ON-- SELECT *
-- INTO #temptable
-- FROM customs
--
-- SELECT *
-- INTO _temp
-- FROM #temptableSELECT *
FROM _temp
END
3 生成DataSet
4 还原存储过程
ALTER PROCEDURE [dbo].[usp]
AS
BEGIN
SET NOCOUNT ONSELECT *
INTO #temptable
FROM customsSELECT *
FROM #temptable
END
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。