LINUX.ORG.RU

MySQL, INSERT ... SELECT ... FROM DUAL

 


0

1

Всем доброго времени суток!

Есть такая таблица:

CREATE TABLE bibles.readers(
  rid INT(11) NOT NULL AUTO_INCREMENT,
  firstName VARCHAR(32) DEFAULT NULL,
  secondName VARCHAR(32) DEFAULT NULL,
  blocked INT(11) NOT NULL DEFAULT 0,
  PRIMARY KEY (rid)
)
ENGINE = MYISAM
AUTO_INCREMENT = 1
CHARACTER SET cp1251
COLLATE cp1251_bin;
Пытаюсь выполнить:
INSERT INTO readers (secondName)
  SELECT secondName FROM DUAL
  WHERE NOT EXISTS(
    SELECT secondName FROM readers
      WHERE firstName = @fName AND secondName = @sName LIMIT 1);
Ответ:
Unknown column 'secondName' in 'field list'
К чему бы это и как исправить? Заранее благодарен.

не знаток mysql, но возможно имелось виду: .... select @sName from dual where ......

anonymous ()
Ответ на: комментарий от Shtsh

Да, я загуглил перед тем как ответ написать. Но насколько я помню, в oracle dual обязательна, тогда как в mysql нет. Возможно в dual и причина ошибки, но лень проверять самому.

i-rinat ★★★★★ ()
28 января 2013 г.

SELECT secondName FROM DUAL ошибка здесь, должно быть так SELECT @sName FROM DUAL

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.