J'ai le code suivant dans un de mes Sql (2008) Stockées Procs qui exécute parfaitement bien:
CREATE PROCEDURE [dbo].[Item_AddItem]
@CustomerId uniqueidentifier,
@Description nvarchar(100),
@Type int,
@Username nvarchar(100),
AS
BEGIN
DECLARE @TopRelatedItemId uniqueidentifier;
SET @TopRelatedItemId =
(
SELECT top(1) RelatedItemId
FROM RelatedItems
WHERE CustomerId = @CustomerId
)
DECLARE @TempItem TABLE
(
ItemId uniqueidentifier,
CustomerId uniqueidentifier,
Description nvarchar(100),
Type int,
Username nvarchar(100),
TimeStamp datetime
);
INSERT INTO Item
OUTPUT INSERTED.* INTO @TempItem
SELECT NEWID(), @CustomerId, @Description, @Type, @Username, GETDATE()
SELECT
ItemId,
CustomerId,
@TopRelatedItemId,
Description,
Type,
Username,
TimeStamp
FROM
@TempItem
END
GO
Donc la question pour vous les gars est-il une possibilité de faire quelque chose le long des lignes de:
DECLARE @TempCustomer TABLE
(
CustomerId uniqueidentifier,
FirstName nvarchar(100),
LastName nvarchar(100),
Email nvarchar(100)
);
SELECT
CustomerId,
FirstName,
LastName,
Email
INTO
@TempCustomer
FROM
Customer
WHERE
CustomerId = @CustomerId
Pour que je puisse réutiliser ces données à partir de la mémoire dans d'autres énoncés suivants? SQL Server jette un ajustement avec la déclaration ci-dessus, mais je ne veux pas avoir à créer des variables et initialisation de chacun d'entre eux par le biais d'une instruction SELECT sur la même table.... POUAH!!!
Toutes les suggestions sur la façon d'obtenir quelque chose le long des lignes de plusieurs requêtes sur la même table?