-1
IF Dealdate = @DealDate

IF在存储过程中使用命令。在该命令中,我使用变量检查表中的列,但它无法执行并返回此错误:

列名“交易日期”无效。

4

2 回答 2

1

如果您想检查表中是否存在DealDate等于等于的行@DealDate,这就是您要执行的操作,

IF EXISTS (SELECT * FROM MyTable WHERE DealDate = @DealDate)
BEGIN
END
于 2013-01-27T18:42:19.613 回答
0

如果要检查表中的值。你需要像这样检查表中列的值 IF EXISTS (SELECT DealDate FROM MyTable WHERE DealDate = @DealDate) BEGIN --你的逻辑在这里。结尾

但是您收到错误“无效的列名'Dealdate'”,这表明您的代码“if Dealdate = @DealDate”没有指定什么是Dealdate,所以SQL服务器给出了这个错误,因为Dealdate不是一个变量,所以SQL Server尝试搜索对于具有这样名称的列,但由于我们的代码中未指定表名,因此会出现此错误。

于 2013-01-27T19:30:09.383 回答