2015-07-10 2 views
0

У меня проблема с столбцом обновления с установленными данными в NULL, у меня есть таблица user с каждым столбцом: id_parent, пользователь может удалить родительский элемент и может добавить родителя, так что если user имеют parent, id_parent будут установлены с помощью пользователя parent id, но пользователь может удалить данные родителя, поэтому, если user удалите данные родителя, то столбец id_parent установит значение NULL. поэтому, как установить данные в null в базе данных, а не " ", но NULL. вот мой user таблица.Как обновить таблицу с помощью набора столбцов NULL в codeigniter

user 

id_user | name | address | id_parent 
+0

Точно так же вы устанавливаете его '' ''. –

ответ

2

Ваш стол пользователь должен иметь набор атрибутов для is_null в id_parent поле. В противном случае вы не сможете.

запрос должен быть чем-то вроде

Update table user set id_parent = null where id_user = X 

Вы можете установить, что столбец Nullable с этим запросом:

ALTER TABLE user MODIFY id_parent int(11) null; 

Попробуйте это для CodeIgniter:

$fields = array(
         'id_parent' => array(
                 'name' => 'id_parent', 
                 'type' => 'INT', 
               ), 
); 
$this->dbforge->modify_column('user', $fields); 

или просто:

$this->db->query('ALTER TABLE user MODIFY id_parent int(11) null;'); 
+0

, так что я могу пользователь изменить таблицу /? это же самое с использованием активной записи в codeigniter? – nanasjr

+0

ОК спасибо, я попробую – nanasjr

2

вы можете попробовать этот код в «модели», надеюсь, что он будет работать:

public function update_std_marks($id_user) { 

    $this->db->set('id_parent', null); 
    $this->db->where('id_user', $id_user); 
    $this->db->update('user'); 
} 
4

использовать это, чтобы установить нуль column.it будет работать, не забудьте добавить ложна на третий набор параметров на активной записи

$this->db->set('id_parent', 'NULL', false); 
Смежные вопросы