2014-01-14 3 views
0

У меня есть следующий SQL:SQL Insert оператор, где одно значение выбирает из другой таблицы

INSERT INTO Invite VALUES (NULL,?,(SELECT id FROM User WHERE name = ?),?); 

Однако это не кажется, работает.

Может ли кто-нибудь сказать мне, что я делаю неправильно?

Update

Следующий код PHP дает мне ERRO код 1136:

$sql = 'INSERT INTO Invite SELECT NULL, ?, id, ? FROM User WHERE username = ?'; 
$variables = array($team_id,$_SESSION['User']['id'],$username); 
$result = $this->db->prepTemplate($sql, 'iis', $variables); 
+0

код 1136 явно упоминают об ошибке "Количество столбцов не совпадает с количеством значений". Проверьте количество столбцов в таблице Invite. – Naveen

ответ

3
INSERT INTO Invite 
SELECT NULL, ?, id, ? 
FROM User 
WHERE name = ? 
+0

Я не могу заставить следующее работать: INSERT INTO Invite SELECT NULL,?, Id,? FROM User WHERE username =? –

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