Работа с БД в Asp
[COLOR=red]Заранее спасибо.[/COLOR]
Подскажите, в скрипте на ASP нужно удалять записи в БД, только когда их количество превышает 100. Как удалить, допустим, только 30 самых старых записей. Ведь запрос на удаление DELETE удаляет или все записи, или по какому-то условию (WHERE).
[COLOR=red]Заранее спасибо.[/COLOR]
1. Вариант создать в БД поле отвечающее за старение и удалять по нему с помощью WHERE.
2. поищи описание TOP и удаляй через ORDER BY desc, я не помню как создавать запросы с помощью TOP но должно сработать.
1. Вариант создать в БД поле отвечающее за старение и удалять по нему с помощью WHERE.
2. поищи описание TOP и удаляй через ORDER BY desc, я не помню как создавать запросы с помощью TOP но должно сработать.
Да, этот вариант я уже рассматривал. И пока он единственный. Т.е. сделать поле Счётчик, в нём будет считаться кол-во сообщений. Причём, самые старые будут иметь меньший порядковый номер => с ростом числа сообщений, растёт значение счётчика. А будет ли работать ASP-скрипт с числами, к примеру, "97885749844333434". :???:
Может как-нибудь связать со временем поступления сообщений? Не знаю, думал на эту тему. Но у меня получается так, сколько лишних сообщений столько же запросов... :???:
Зачем же так сложно. Надо просто добавить поле типа timestamp (или DateTime), первым запросом посчитать общее количество (ОК) записей, а вторым удалить ОК-100 самых старых записей.
Вопрос такой, можно ли сравнить два значения даты. Например, Date1>=Date2? Если можно, то на самом деле всё просто.
А разве LIMIT в ДЕЛИТ не работает?
Конечно работает:
Как удалить последние записи с помощью limit я что-то не представляю.
[BКак удалить последние записи с помощью limit я что-то не представляю.
Конечно же не последние, а самые ранние записи можно удалить delete from tbl_name limit n. Но только при условии, что они не модифицировались.
Вот как звучал вопрос:
Как удалить последние записи с помощью limit я что-то не представляю.
ORDER BY ID ASC
ORDER BY timestamp ASC
Если БД MySQL, так order by поддерживается начиная с 4.0
Чушь! Он его поддерживает с первой версии, иначе б грош цена была бы БД у которой нету внутренего порядка.
Конечно работает:
Воощет наскоко я знаю LIMIT [COLOR=red]НЕ[/COLOR] работает ни в MSSQL ни в Аксесе. Используеться другая команда - TOP. А поскольку вопрос по ASP то навряд там стоит другая база.
Воощет наскоко я знаю LIMIT [COLOR=red]НЕ[/COLOR] работает ни в MSSQL ни в Аксесе. Используеться другая команда - TOP. А поскольку вопрос по ASP то навряд там стоит другая база.
ЛИМИТ не работает в аксесе. Мелкомягкие как всегда выделелись против стандарта SQL. А вот в мускуле он блистает. С помощью нео делают постраничный вывод информации. Я это не знаю. Я это использовал.
ЛИМИТ не работает в аксесе. Мелкомягкие как всегда выделелись против стандарта SQL. А вот в мускуле он блистает. С помощью нео делают постраничный вывод информации. Я это не знаю. Я это использовал.
Мускул - ты подразумеваешь MSSQL или MySQL?
Мускул - ты подразумеваешь MSSQL или MySQL?
Сорри.... начит Лимит не работает)))))) потому что мелкомягкие=)