2009-09-22 4 views
0

Я хочу спросить о планировании, есть ли какая-либо команда MySQL для планирования. Например, я хочу вставить данные в БД. Могу ли я написать заявление sql, чтобы удерживать его некоторое время, или, может быть, я вставляю эти данные в определенное время, например, завтра 8:00 amMySQL Вопрос о планировании

Я знаю, что это можно сделать с помощью программирования, но я хочу сделать это это в команде SQL, можно ли это сделать? Если нет, то какие-либо предложения?

ответ

3

Планирование фоновых заданий не входит в набор команд SQL. Таким образом, каждому поставщику базы данных приходится предоставлять собственное расширение. В Oracle это пакет PL/SQL, DBMS_SCHEDULER (или DBMS_JOB в старых версиях). В MYSQL это будет the Event Scheduler, в котором используется синтаксис SQL.

Редактировать

Как Пол Диксон отметил планировщик событий относительно недавнее расширение MySQL (я не эксперт MySQL, так что простите, если это не полезно для вас).

+0

+1, я не знал об этом, добавил в MySQL 5.1 –

0

Возможно, вы захотите посмотреть triggers.

Без дополнительной информации о том, что именно вы пытаетесь сделать, это хорошее место для начала.

2

У MySQL 5.1.6+ есть Event Scheduler.

Если вы используете более раннюю версию, вы можете написать небольшой скрипт, который выполнил требуемый SQL, и запланировать его с помощью at, cron или аналогичного.