powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Ограничения транзакцию по времени
9 сообщений из 9, страница 1 из 1
Ограничения транзакцию по времени
    #39598509
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите пожалуйста поставить лимит на INSERT ,чтобы в таблицу информация добавлялась каждые 5 секунд один INSERT.

Каким путем лучше всего решить триггер или .. ?

Из-за того что ajax срабатывает по 3-4 раза в таблицу попадает по 3-4 повторных столбцов. Как вариант поставил написал

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
declare v_count number;

begin

select count(*)
into v_count
from table 
where create_date = sysdate;

if v_count > 0
then
raise_application_error (-20000 , 'error');

end if;

end;



Но так как в SYSDATE учитываются и миллисекунды , то он не срабатывает. Проверка по ID не катит так как там срабатывает Sequence
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39598527
Goofy122,

Бред на бреде и бредом погоняет. Шел бы ты лучше снег убирать.
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39598533
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дегенерация ПGoofy122,

Бред на бреде и бредом погоняет. Шел бы ты лучше снег убирать.

Я все понимаю это не твой уровень тебе легче ответить так , чем что-то умное предложить , иди ровно не сворачивай
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39598649
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Goofy122лимит на INSERTэто неправильный подход. Лучше уменьши изначальное количество инсертов.
Goofy122в SYSDATE учитываются и миллисекунды https://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT413
Goofy122Проверка по ID не катит так как там срабатывает Sequenceзачем вообще вводили кривой суррогат?
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39598650
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122Из-за того что ajax срабатывает по 3-4 раза в таблицу попадает по 3-4 повторных столбцов.Авакс срабатывает столько раз, сколько попросят. Покажите ваш клиентский код в соответствующей ветке.
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39598651
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xtenderзачем вообще вводили кривой суррогат?С суррогатом всегда удобней DML делать, изменить, удалить по id (а с ОРМ-ми must have). А вот добавить еще и уникальный ключ - не помешает.
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39598793
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Relic Hunterxtenderзачем вообще вводили кривой суррогат?С суррогатом всегда удобней DML делать, изменить, удалить по id (а с ОРМ-ми must have). А вот добавить еще и уникальный ключ - не помешает.

PRIMARY KEY есть конечно , то есть не зависимо от фронтенде я в базе учитываю чтобы в базу попадало по 1-му разу , решил вопрос другим путем добавил еще одну колонку в таблицу и дал ему тип , проверяю по типу если один и тот же тип одному и тому же сотруднику попадает 2 раза чтобы выдавало ошибку (raise) , хотел исправить это через INSERT , существует ли ограничения INSERT по времени
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39598815
Фотография шК0ДЕР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122существует ли ограничения INSERT по времениПодобные ограничения - работа клиентской части приложения
...
Рейтинг: 0 / 0
Ограничения транзакцию по времени
    #39599698
alexk123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122П

Код: plsql
1.
2.
3.
4.
select count(*)
into v_count
from table 
where create_date = sysdate;



Но так как в SYSDATE учитываются и миллисекунды , то он не срабатывает. Проверка по ID не катит так как там срабатывает Sequence

select count(*)
into v_count
from table
where create_date between sysdate-(1/(24*60*12)) and sysdate;

вот и желаемые 5 секунд :) Хотя задачу надо решать не так
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Ограничения транзакцию по времени
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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