Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как удалить все значения столбца, не удаляя сам столбец?
 
 автор: Олег87   (11.12.2007 в 03:11)   письмо автору
 
 

я пробывал так:


delete from table where $del[ips] != NULL


не удаляет ничего, как правильно сделать?

   
 
 автор: cheops   (11.12.2007 в 03:29)   письмо автору
 
   для: Олег87   (11.12.2007 в 03:11)
 

С NULL сравнивать логическими операторами нельзя, вместо этого используются операторы IS NULL и IS NOT NULL.

   
 
 автор: Олег87   (11.12.2007 в 03:36)   письмо автору
 
   для: cheops   (11.12.2007 в 03:29)
 

$del=mysql_fetch_array($mdel);
mysql_query("delete from table where $del[ips] IS NOT NULL");

не работает :-\

   
 
 автор: Trianon   (11.12.2007 в 09:19)   письмо автору
 
   для: Олег87   (11.12.2007 в 03:36)
 

а что Вы имеете в виду под удалением значения столбца?

пометить ячейку как NULL?

UPDATE `table` SET `column` = NULL WHERE `column` IS NOT NULL

удалить всю строку?

DELETE FROM `table` WHERE `column` IS NOT NULL

   
 
 автор: Олег87   (11.12.2007 в 15:53)   письмо автору
 
   для: Trianon   (11.12.2007 в 09:19)
 

>а что Вы имеете в виду под удалением значения столбца?
имею в виду удалить все строки из столбца ips, сам столбец чтобы остался пустой .


>удалить всю строку?
>DELETE FROM `table` WHERE `column` IS NOT NULL

этот запрос удаляет все строки из всех столбцов, а мне нужно удалить все только из ips :)
DELETE FROM `my_table` WHERE `ips` IS NOT NULL

   
 
 автор: Unkind   (11.12.2007 в 16:19)   письмо автору
 
   для: Олег87   (11.12.2007 в 15:53)
 

Из столбца что-то удалить нельзя. Удалить можно строку. Строка к столбцу не привязана.

   
 
 автор: Faraon   (11.12.2007 в 16:47)   письмо автору
 
   для: Олег87   (11.12.2007 в 15:53)
 

Вам Trianon Выше сказал, как можно поступить

UPDATE `table` SET `ips` = NULL WHERE `ips` IS NOT NULL

   
 
 автор: Олег87   (11.12.2007 в 18:02)   письмо автору
 
   для: Faraon   (11.12.2007 в 16:47)
 

всем спасибо большое!

   
 
 автор: Trianon   (11.12.2007 в 19:24)   письмо автору
 
   для: Олег87   (11.12.2007 в 15:53)
 

>>а что Вы имеете в виду под удалением значения столбца?
>имею в виду удалить все строки из столбца ips, сам столбец чтобы остался пустой .
из столбца нельзя удалить строки, поскольку их там нет.

Таблица состоит из строк.
Строки состоят из полей (причем все строки равны по числу и типу полей. )
Соответствующие поля во всех строках образуют столбец, который имеет имя.
Из таблицы можно удалить строку (со всеми полями сразу).
Из таблицы можно убрать столбец весь скопом (правда эта операция уже относится к администрированию, а не к манипулированию данными)
Из столбца же ничего нельзя убрать потому что данных в нем нет. Данные живут в строках.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования