有问题的存储过程将通过SSIS包调用。这阻止了我使用#TempTable
。显然那些不能用于SSIS包的情况。
所以我认为我会使用表变量,但我无法在SQL Server Management Studio中编译它。
DECLARE @TempTable TABLE
(
OrganisationId INT NOT NULL,
OrganisationName NVARCHAR(120) NULL,
SummaryText NVARCHAR(MAX) NULL,
Url VARCHAR(8000) NULL,
Address1 NVARCHAR(255) NULL,
Address2 NVARCHAR(255) NULL,
Address3 NVARCHAR(255) NULL,
City NVARCHAR(50) NULL,
County NVARCHAR(50) NULL,
Latitude REAL NULL,
Longitude REAL NULL,
Postcode VARCHAR(8) NULL,
LastUpdatedDate DATETIME NULL,
Geocode GEOGRAPHY NULL,
Contact VARCHAR(1000) NULL,
ContactMethodType INT NULL,
rn INT NULL,
);
INSERT INTO @TempTable
EXEC [dbo].[GetServiceOrganisations] @ResultsViewListServices;
INSERT INTO @TempTable
EXEC [dbo].[GetOrganisations] @ResultsViewListOthers;
我在SQL Server Management Studio中遇到的错误是语法错误,这里是:
这里有什么问题?
答案 0 :(得分:0)
感谢Ed Harper发现尾随的逗号。
答案 1 :(得分:0)
SELECT * INTO #MyTempTable
FROM OPENROWSET('SQLNCLI',
'Server=(local)\SQL2008;Trusted_Connection=yes;',
'EXEC stored proc name with params')
使用params
添加存储过程