-5

为什么我会收到错误消息?

必须声明一个标量变量@wight

在我的存储过程中?

create PROCEDURE [dbo].Vector
    (@word Varchar, @Wight double ) 
AS  
SET NOCOUNT ON;

SELECT
    DocId, TermWight * @Wight as "ss", word, id,
    wordid, IDF, TFij     
FROM            TermWeight

WHERE  (word = @word) and (TermWight <> 0)
4

2 回答 2

2

您正在使用@word,但它没有在任何地方声明。

于 2013-07-03T17:25:13.420 回答
2

给你:

CREATE PROCEDURE [dbo].Vector
(@word VARCHAR (100) , @Wight float)
AS
SET NOCOUNT ON;

SELECT
    DocId ,
    TermWight * @Wight AS 'ss' ,
    word ,
    id ,
    wordid ,
    IDF ,
    TFij
FROM TermWeight

WHERE (word = @word)
AND (TermWight <> 0)

之前的几个问题。在我的示例中,Varchar 应该应用了一个长度(100)。正如其他人提到的 Double 不是 sql 类型 float 是最接近的等价物(我相信)

于 2013-07-03T17:40:00.310 回答