【发布时间】:2016-01-21 17:26:02
【问题描述】:
我想将一些数据存储到 SQL Server 中的表类型中。在下面的代码中,我定义了表的结构并将其声明为一个类型。但后来,用该类型声明的变量找不到它。错误是:
列、参数或变量 #17:找不到数据类型 ARTSRetailPriceModifier。
声明和变量赋值的代码是:
CREATE TYPE ARTSRetailPriceModifier AS TABLE
(
ID int NOT NULL IDENTITY(1,1),
RecID int,
PromoId int,
SNumber int,
MCode VARCHAR(50),
Amount DECIMAL(7,2),
[Action] VARCHAR(20),
NPrice DECIMAL(7,2),
PPrice DECIMAL(7,2),
RCode VARCHAR(1),
PCondition VARCHAR(1)
);
DECLARE @PriceModifiers AS ARTSRetailPriceModifier
INSERT INTO @PriceModifiers (
RecID,
PromoId,
SNumber,
MdCode,
Amount,
[Action],
NPrice,
PPrice,
RCode,
PCondition
)
SELECT d.RecID AS 'RecID'
, 1 AS 'PromotionID'
, d.SequenceNumber + 1 AS 'SequenceNumber'
, 'PriceOverride'AS 'MethodCode'
, ABS(d.RetailPrice - d.UnitListPrice) AS 'Amount'
, 'Replace' AS 'Action'
, d.UnitListPrice AS 'NewPrice'
, d.RetailPrice AS 'PreviousPrice'
, '1' AS 'ReasonCode'
, '1' AS 'PromoCondition'
FROM #Items d
表格#Items已正确填写。
【问题讨论】:
标签: sql-server sql-server-2014 temp-tables user-defined-types