2012-03-08 3 views
1

Ниже приведено подробное описание патча базы данных о таблице, в которой персонажи ролей связаны с их навыками. То, что я хочу, это то, что отныне есть не только навыки, которые у них есть, но и навыки, которых у них нет (с графом 0), и те, которые у них не должны быть (счет -1).Дублируемое имя столбца в выражении «insert ... where not exists»

insert into char2skill select * from 
(select null, 23, 23, -1, '') as foo where not exists 
(select * from char2skill where `char`=23 and skill=23); 

Сценарий сбой на этой линии (символ # 23 связан с умение # 23 здесь), говоря

1060 - Повторяющиеся имя столбца '23'

Я предполагаю, что это вложенная select, который я использую для определения значений, которые нужно вставить, но я не знаю, как это исправить ...?

MySQL версии 5.0.51a

Заранее спасибо!

+0

сделать что' ... (выбрать нуль в качестве, 23, б, 23, с, -1 AS д, '' AS е). ..' –

+0

Большое вам спасибо! Я думал слишком сложно, кажется ...;) – Mahawkee

ответ

0

попробуйте добавить некоторые fnurrps "`" вокруг навыком

insert into char2skill select * from 
(select null, 23, 23, -1, '') as foo where not exists 
(select * from char2skill where `char`=23 and `skill`=23); 
+0

Он работает без этих символов, в то время как «char» в одиночку вызывает ошибку - плохо ли он стиль кодирования, чтобы оставить вещи, когда они действительно не нужны? – Mahawkee

Смежные вопросы