ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

MySQL (Delete)
  #1  
Старый 16.09.2007, 13:37
RaiDeRz
Участник форума
Регистрация: 05.04.2007
Сообщений: 123
Провел на форуме:
507350

Репутация: 27
Отправить сообщение для RaiDeRz с помощью ICQ
По умолчанию MySQL (Delete)

Как узнать сколько было удалено записей в запросе?
Ничего толком ненашел только узнал что вообще должен выводиться ответ от комманды этой сколько удаленно, но как реализовать даже получение этого ответа я непонял ))
 
Ответить с цитированием

  #2  
Старый 16.09.2007, 13:54
Joker-jar
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме:
4172659

Репутация: 646


Отправить сообщение для Joker-jar с помощью ICQ
По умолчанию

Ты бы для начала сказал, на чем кодишь
 
Ответить с цитированием

  #3  
Старый 16.09.2007, 13:56
inlanger
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
Провел на форуме:
3326855

Репутация: 702


По умолчанию

есть в PHPmyAdmin, то должен высветиться отчёт.
 
Ответить с цитированием

  #4  
Старый 16.09.2007, 14:06
guest3297
Banned
Регистрация: 27.06.2006
Сообщений: 1,614
Провел на форуме:
3887520

Репутация: 2996


По умолчанию

Цитата:
Как узнать сколько было удалено записей в запросе?
Ничего толком ненашел только узнал что вообще должен выводиться ответ от комманды этой сколько удаленно, но как реализовать даже получение этого ответа я непонял ))
Все зависит от параметров запроса, вообще ты это средсвами mysql не посчитаешь, как вариант count(*) до и после и из 1 вычитаем 2...
 
Ответить с цитированием

  #5  
Старый 16.09.2007, 14:20
RaiDeRz
Участник форума
Регистрация: 05.04.2007
Сообщений: 123
Провел на форуме:
507350

Репутация: 27
Отправить сообщение для RaiDeRz с помощью ICQ
По умолчанию

И без count'а как-то можно? а то что-то нехочеться грузить сильно все это))
И так от мускула на сервер 80% нагрузки идет
 
Ответить с цитированием

  #6  
Старый 16.09.2007, 14:26
guest3297
Banned
Регистрация: 27.06.2006
Сообщений: 1,614
Провел на форуме:
3887520

Репутация: 2996


По умолчанию

чето не чего в гово ботше не лезет...
дай пример запроса.
 
Ответить с цитированием

  #7  
Старый 16.09.2007, 14:46
RaiDeRz
Участник форума
Регистрация: 05.04.2007
Сообщений: 123
Провел на форуме:
507350

Репутация: 27
Отправить сообщение для RaiDeRz с помощью ICQ
По умолчанию

Вот пример:
Цитата:
DELETE FROM test WHERE type = '1'
Когда читал мануал по MySQL там вроде написано, что он в ответе должен дать кол-во удаленых рядов, но как его получить я незнаю, ведь там возможен вывод только таблиц через функции
 
Ответить с цитированием

  #8  
Старый 16.09.2007, 14:50
Joker-jar
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме:
4172659

Репутация: 646


Отправить сообщение для Joker-jar с помощью ICQ
По умолчанию

PHP код:
          $zapros 'DELETE FROM test WHERE type = 1';
          
$result = @mysql_query($zapros);
          
$delnum = @mysql_result($result,0) ; 
 
Ответить с цитированием

  #9  
Старый 16.09.2007, 15:00
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Я так и не понял на чём ТС ведёт разработку, но если на PHP, то это всё элементарно:

Цитата:
<?php
mysql_pconnect("somehost", "someuser", "somepassword") or
die("Could not connect: " . mysql_error());

mysql_select_db("some_db") or
die("Could not select database: " . mysql_error());

mysql_query("DELETE FROM test WHERE type=1");
printf ("Records deleted: %d\n", mysql_affected_rows());
?>
Только будьте внимательны. Если запрос на удаление не содержал условия WHERE (удалялись все записи), то функция mysql_affected_rows() всегда возвращает 0.
 
Ответить с цитированием

  #10  
Старый 16.09.2007, 18:15
Kridan
Новичок
Регистрация: 02.06.2007
Сообщений: 24
Провел на форуме:
119202

Репутация: 19
По умолчанию

Цитата:
Оператор DELETE удаляет из таблицы table_name строки, удовлетворяющие заданным в where_definition условиям, и возвращает число удаленных записей.
Так что можно как при обычном INSERT вывести результат. (здаётся мне это будет первый элемент возвращаемого массива)

Цитата:
Если действительно необходимо знать число удаленных записей при удалении всех строк, и если допустимы потери в скорости, то можно использовать команду DELETE в следующей форме:
mysql> DELETE FROM table_name WHERE 1>0;
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP, PERL, MySQL, JavaScript 5 28.12.2006 18:26
SQL injection в MySql сервере версии 3,x bandera Чужие Статьи 3 04.06.2006 16:17
Общие Рекомендации Защиты (MySQL и SQL Web-интерфейс) k00p3r Чужие Статьи 0 13.06.2005 11:22
Защищаем MySql. Шаг за шагом k00p3r Чужие Статьи 0 13.06.2005 11:18



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ