2
SELECT id INTO @aid 
FROM `lista` 
WHERE aname='teszt' LIMIT 0,1;

IF ISNULL(@aid) 
THEN INSERT INTO `szer_k` (`id`,`a`,`b`) VALUES (NULL, 'Teszt2',10);

它说:

#1064 error

(问题是空的?)

如果然后执行插入命令,我会喜欢@aid的。NULL

谢谢。

4

1 回答 1

4

既然你正在检查ISNULL(@aid). 如果它是 NULL,那么只有Insert语句会被触发。存在Invalues子句@aid。哪个NULL已经检查过了。因此替换@aidNULL.

SELECT id INTO @aid 
  FROM lista 
 WHERE aname='teszt' LIMIT 0,1; 

IF ISNULL(@aid) THEN 
  INSERT INTO szer_k (id,a,b) 
  VALUES (NULL, 'Teszt2',NULL);
END IF

更新 :

你最后失踪END IF了。 见这里语法

于 2013-09-02T10:20:13.313 回答