powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / SET ROWCOUNT 1 DELETE 'com'
18 сообщений из 18, страница 1 из 1
SET ROWCOUNT 1 DELETE 'com'
    #33411944
Фотография Admin_Vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Не подскажите ли какой аналог SQL запроса удаляющего первую строку из базы данных?
У меня в MSSQLServer'e работало: SET ROWCOUNT 1 DELETE 'com'
Но в phpMyAdmin (для MYSQL) Не работает. Как удалить с помощью скрипта первую строку?
Вообще пытаюсь написать программу удаляющую строку отмеченную с помощью <input type='radio'>
Не подскажите как это реализовать?
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33412001
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Этот вариант принципиально неправильный, если с базой работает более одного человека -- очень просто удалить что-то не то.
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33412271
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
интересно, для чего это юзается? Академический интерес?
------------------
- А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33412277
Фотография Валентин К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотря от версии MySQL можно использовать конструкцию LIMIT 1 в конце delete, но согласен с DocAll
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33412279
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще да, смысл таких действий малопоняен...
Для MySQL его заменяет запрос DELETE FROM tblname LIMIT 1.
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33412317
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ваще... есть ведь доки http://dev.mysql.com/doc/refman/4.1/en/delete.html
------------------
- А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33413191
VERS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Admin_VladВообще пытаюсь написать программу удаляющую строку отмеченную с помощью <input type='radio'>
Не подскажите как это реализовать?
Удалять по индексу? А вообще, что значит первая строка? В РБД вроде такого понятия нет ... или я ошибаюсь?
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414026
Фотография Admin_Vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вы не подскажите почему вот этот фрагмент скрипта выводит переменную $col_value дважды?

print "<table>\n";
while ($line = mysql_fetch_array($result)) {
print "\t<tr>\n";
while(list($col_name, $col_value) = each($line)) {
print "\t\t<td>$col_value</td>\n";
}
print "\t</tr>\n";
}
print "</table>\n";
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414031
Фотография Admin_Vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DocAlВообще да, смысл таких действий малопоняен...
Для MySQL его заменяет запрос DELETE FROM tblname LIMIT 1.

А если нужно удалить строку N2? То тогда "DELETE FROM tblname LIMIT 2" ?
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414090
Фотография Admin_Vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL-запрос:

DELETE com LIMIT 2
Ответ MySQL:

#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 2' at line 1
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414245
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если вам настолько не нужны данные -- может быть, проще сразу использовать TRUNCATE?
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414724
Фотография Admin_Vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DocAlЕсли вам настолько не нужны данные -- может быть, проще сразу использовать TRUNCATE?
А какой SQL запрос должен быть чтобы удалить или обнулить строку N2?
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414728
Фотография Валентин К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Admin_VladSQL-запрос:

DELETE com LIMIT 2
Ответ MySQL:

#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 2' at line 1

Неправильный запрос, правильный
DELETE from com LIMIT 2;

он удалит 2 строки.
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414733
Фотография Валентин К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Admin_Vlad DocAlЕсли вам настолько не нужны данные -- может быть, проще сразу использовать TRUNCATE?
А какой SQL запрос должен быть чтобы удалить или обнулить строку N2?
Никакой, потому что эта строка может быть №1 при других условиях where или order by :) и тогда можно будет удалить всего 1 строку, которая №2 при условиях, которые были вначале.

Каламбур конечно, но понимаете ли вы, афтар вопроса, что удаление строки идет после ее определения по условиям сортировки?
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414743
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кроме того, при отсутствии условий сортировки, порядок вывода, вообще говоря, отдаётся на откуп СУБД, и нет никаких гарантий, что в следующий раз элементы будут идти в том же порядке. И хотя вероятность этого велика, ничто это _НЕ_ГАРАНТИРУЕТ_. Так что удаление как первой записи, так и второй записи логически эквивалентно -- это удаление _СЛУЧАЙНОЙ_ записи. Потому, если вам нужно удалить какую-то определённую запись -- сообщайте в WHERE условия удаления, однозначно идентифицирующие именно ту запись, которую хотите удалить. Иначе это стиль программирования "руки поотрывал бы!".
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33414855
VERS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
неизв.В реляционной модели данных нет понятия порядка данных в таблице и соответствено нет понятия начала и конца данных, также как и понятия "указатель таблицы". И сот-но нет понятия первая запись, вторая и т.п. Ты должен сам обеспечивать этот порядок с помощью ODRER BY и/или ключевого поля, для этого AUTO_INCREMENT очень очень подходит.

-------------------------------
www.free-lancer.ru
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33416582
Фотография Admin_Vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понял! А как использовать AUTO_INCREMENT в MySQL?
...
Рейтинг: 0 / 0
SET ROWCOUNT 1 DELETE 'com'
    #33416720
Фотография Admin_Vlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, уже разобрался. В phpMyAdmin есть иконка с ключом и select с 'auto_increment'
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / SET ROWCOUNT 1 DELETE 'com'
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]