Мне нужно добавить столбец из базы данных (opencart) также проверить вопрос или нет

Мне нужно добавить столбец из базы данных (opencart) также проверить вопрос или нет

14.06.2019 11:36:04 Просмотров 29 Источник

я использовал какой-то код, но у меня проблема

мой код:

$check = $db->query("SELECT * FROM `oc_product` WHERE $column_new");
if($check !== FALSE){echo("<p>The column exists.</p>");
}else{
$add = $db->query("ALTER TABLE $table_new ADD $column_new DECIMAL( 15, 4 ) NOT NULL DEFAULT  '0.0000' AFTER  `price`");
}

текстовое сообщение об ошибке:

i Notice: Error: Unknown column 'price_old' in 'where clause'
Error No: 1054
SELECT * FROM `oc_product` WHERE price_old in \database\mysql.php on line 50
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/56604841/i-need-add-column-from-databaseopencart-also-check-issue-or-no#comment99786055_56604841
Проверьте орфографию на price_old это не в oc_product.
https://stackoverflow.com/questions/56604841/i-need-add-column-from-databaseopencart-also-check-issue-or-no#comment99787321_56604841
У меня его нет, я хочу добавить его, но после проверки

Ответы - Мне нужно добавить столбец из базы данных (opencart) также проверить вопрос или нет / I need add column from database(opencart) also check issue or no

Является ответом!
Rupak Nepali

15.06.2019 08:54:28

$check = $this->db->query("SHOW COLUMNS FROM " . DB_PREFIX . "product LIKE 'price_old'");
if ($check->num_rows > 0) {
    echo "It exists";
} else {
    echo "Not";
}

Мы можем проверить, как описано выше, и выполнить вашу логику внутри if else.

jay padaliya

16.06.2019 01:32:15

Использовать SHOW COLUMNS

// table oc_product
$query = $this->db->query("SHOW COLUMNS FROM `" . DB_PREFIX . "product`");
$field = array_column($query->rows, 'Field');

if(!in_array($column_new, $field)){
     $this->db->query("ALTER TABLE `" . DB_PREFIX . "product` ADD COLUMN $column_new DECIMAL( 15, 4 ) NOT NULL DEFAULT  '0.0000' AFTER  `price`");
}
Закрыть X