![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создание тригера [D7]
Scorpio © (2006-07-24 13:34:00)Добрый день мастера. У меня возникла проблема с тригером.
Как создать тригер ьаким образом, чтобы он проверял сегоднешнюю дату, создавал к ней сиквенцию, + 5 цифр после, и если такая сиквенция уже существует, то к ней + 1.
Ипользую Оракл 10
Sergey13 (2006-07-24 14:24:00) [21]2 [12] Scorpio © (24.07.06 14:11)
> скажем так, в номерах давольно много информации зашито,
Тогда это не номер, а составной код.
> и второе, разве нельзя использовать одно и тоже имя сиквенции,
> просто удаляя старое и создавая новое ??
Нафига? ИМХО, тебе надо кроме ИД-шника ввести поля сотавляюшие составной (сори за тавтологию) ключ - альтернативный. Отдельно год, номер в году, еще что-то что надо. Причем номер в году я бы сделал MAX-ом в тригере после вставки - иначе дыры в нумерации обеспечены. MAX тоже от них не спасает, но делает меньшими.
Reindeer Moss Eater (2006-07-24 14:21:00) [22]Ну если ты собрался создавать их пачками, то сколько их у тебя должно быть?
Можно сделать хотябы чтобы только год мне шлепала в сиквенс ??
А зачем шлепать в сикванс? Нельзя разве шлепать в значение, полученное из сикванса?
Scorpio (2006-07-24 14:18:00) [23]Про динамический SQL я толком ничего не знаю. Но про сиквенс не могу понять, у меня их что должно быть несколько ???
Можно сделать хотябы чтобы только год мне шлепала в сиквенс ??
Reindeer Moss Eater (2006-07-24 14:14:00) [24]Ты не понял.
С одной стороны тебе не понятно, как получить номер.
С другой стороны, в момент, когда нужно тянуть значение из сикванса, тебя не беспокоит сложность вопроса как определить из какого именно сикванса тянуть номер и как при этом использовать динамический SQL.
Какое-то несоответствие налицо.
Scorpio (2006-07-24 14:11:00) [25]скажем так, в номерах давольно много информации зашито, и второе, разве нельзя использовать одно и тоже имя сиквенции, просто удаляя старое и создавая новое ??
Reindeer Moss Eater (2006-07-24 14:08:00) [26]а как мне получить номер, мне как мнимум в этом номере нужен год
<Цитата>
А вопрос о том, как получить имя сикванса, который нужно дергать, тебя конечно же не волнует? А так же вопрос о динамическом SQL ?
Sergey13 (2006-07-24 14:04:00) [27]> [9] Scorpio © (24.07.06 14:01)
> а как мне получить номер, мне как мнимум в этом номере нужен
> год
В номерах нет никаких годов. И месяцев тоже нет.
Scorpio (2006-07-24 14:01:00) [28]а как мне получить номер, мне как мнимум в этом номере нужен год
Reindeer Moss Eater (2006-07-24 13:57:00) [29]Ну и зачем здесь вагон сиквансов ?
Scorpio (2006-07-24 13:56:00) [30]Например есть база лиц. Далее человек например едет ч/з границу, на КП он заполняет миграционный талон его вносят в БД. Он должен получить к этому талону номер, этот номер и должен быть уникальным.
Johnmen (2006-07-24 13:47:00) [31]
> Раньше он у меня создавался програмно,
> у меня одновременно с БД работает порядка 100 человек
>
И не разу не падало?! Вот же везение! :)
Sergey13 (2006-07-24 13:47:00) [32]2 [3] Scorpio © (24.07.06 13:41)
> я с ораклом тока разбираюсь.
Это то понятно. 8-)
> У меня должно к базе создаться уникальный номер. Раньше
> он у меня создавался програмно, а теперь хочу исключить
> вероятность того, что два человека смогут получить одинаковый
> номер.
Какой номер? Уникальный в разрезе чего?
> у меня одновременно с БД работает порядка 100 человек
Ну и что?
Scorpio (2006-07-24 13:42:00) [33]у меня одновременно с БД работает порядка 100 человек
Scorpio (2006-07-24 13:41:00) [34]я с ораклом тока разбираюсь.
У меня должно к базе создаться уникальный номер. Раньше он у меня создавался програмно, а теперь хочу исключить вероятность того, что два человека смогут получить одинаковый номер.
Petr V. Abramov (2006-07-24 13:39:00) [35]> Scorpio ©
похоже, будет проще, если Вы опишете, что в конце концов хотите получить.
Sergey13 (2006-07-24 13:37:00) [36]Какой тригер то?
>создавал к ней сиквенцию
Это DDL, который в тригерах не прокатит. Может тебе job запускать по расписанию?
ЗЫ% А нафига сиквенс на день?