ссылка на вопрос ссылки это
выбор определенного числа в качестве значения столбца в запросе
как реализовать то же самое в CodeIgniter.
это мой код:
$this->db->select(''.$insertId.', itemId, qty, rate');
$this->db->from('tbl_purchaseorderdetail');
$this->db->where('masterId', $purchaseorderId);
$query = $this->db->get();
Попробуй это.
$this->db->_protect_identifiers=false;
$this->db->select('"'.$insertId.'" as insertid, itemId, qty, rate');
$this->db->from('tbl_purchaseorderdetail');
$this->db->where('masterId', $purchaseorderId);
$query = $this->db->get();
Если вы установите статическое значение, тогда он работает нормально. Проверьте это один раз, чтобы мы могли пойти дальше.
$this->db->_protect_identifiers=false;
$this->db->select('34 as insertid, itemId, qty, rate');
$this->db->from('tbl_purchaseorderdetail');
$this->db->where('masterId', $purchaseorderId);
$query = $this->db->get();
Вставьте вот так, Здесь $ query содержит результаты вашего предыдущего запроса.
foreach ($query->result() as $row) {
$this->db->insert('tbl_purchasedetail', $row);
}
значение $ insertId равно 34
codeIgniter на самом деле ставит этот знак `` поэтому база данных принимает его как столбец. он должен принимать только 34, а не 34
в codeIgniter.
это ошибка: Номер ошибки: 1054 Неизвестный столбец '34' в 'списке полей' ВЫБЕРИТЕ 34
как insertId, itemId
, qty
, rate
FROM (tbl_purchaseorderdetail
) ГДЕ masterId
= '2' Имя файла: C: \ wamp64 \ www \ applicationName \ system \ database \ DB_driver.php Номер строки: 331
Я снова обновил свой ответ. чтобы удалить `` мы должны установить для идентификаторов защиты значение false
после выбора сейчас возникает ошибка при вставке: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис рядом с ')' в строке 1 INSERT INTO tbl_purchasedetail (0
, 1
) VALUES (,) $this->db->insert('tbl_purchasedetail', $query->result());
это правильный способ вставить
Я обновил ответ, сначала проверьте его со статическим значением
да, эта ошибка исчезла, но как мне вставить этот результат запроса в таблицу tbl_purchasedetail
$ this-> db-> select ("'$ insertId' как inserttid, itemId, qty, rate");
это заявление: $this->db->insert('tbl_purchasedetail', $query->result());
из вашего обновленного ответа он вставляет сейчас большое спасибо :)
Какое значение имеет $ insertId.