Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
Всем привет! У меня есть тригер на инсерт, но в результате его действия данные, которые идут одним потоком с маленьким интервалом, записываються в таблицу под одним временем возникновения (по моему это время возникновения последней записи в этой очереди). Мои предположения, что тригер не успевает обработать запись, полученную по ODBC. Неуспев, он получает новую запись и т.д, пока не придёт последняя запись этого потока, которую обрабатывает тригер и остальные данные просто записывает с тем-же временем. Но это только мои предположения, может-быть я не прав. Выскажите Ваши, каким образом можно это обойти. Помогите кто сможет!! Заранее благодарен всем за какую-либо информацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2002, 15:56 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
Хм, лучше покажите ваш триггер и как, собственно, вы вы добавляете записи в таблицу и откуда берется время добавления, а то я как-то не могу представить себе "что тригер не успевает обработать запись, полученную по ODBC". А добавление данных, кстати, производиться в одном коннекте или нескольких ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2002, 16:11 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
Согласен с уважаемым Glory, все непонятно: "идут одним потоком", "маленьким интервалом", "под одним временем возникновения". Единственное предположение - Вы, для хранения "времени возникновения", используете smalldatetime. В таком случае "времени возникновения" будет иметь точность не более минуты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2002, 16:20 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
А у меня предположение, что триггер написан для обработки одной строки. Присоединяюсь к остальным - код покажите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2002, 05:06 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
Текст тригера следующий - declare @max int select @max=max(var4) from table1 insert into table2 select table1.eid, table1.grp, table1.area, table1.dtime, table1.ttime, table1.msg, table1.var4, table1.opr from table1 where var4 = @max В поле var4 пишется время возникновения события в секундах от 80 года. Каждая запись пишеться своей конекцией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2002, 07:09 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
2 Максим Говорите, плиз, человеческим языком, для меня совершенно непонятен смысл вашего предложения - Каждая запись пишеться своей конекцией. Теперь по поводу триггера. Он принципиально расчитан на обработку одной записи, могу предположить что это вам так и надо если разъясните смысл сказанного вами выше данные, которые идут одним потоком с маленьким интервалом Т.е. вы вставляете 2-мя insert-ми записи, и тригер не успевает обработать второй insert? Судя по Вашим словам Неуспев, он получает новую запись и т.д, пока не придёт последняя запись этого потока, которую обрабатывает тригер и остальные данные просто записывает с тем-же временем вы не совсем понимаете механизм вставки записей, если хотите более конструктивного ответа опишите более подробно задачу и ваше решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2002, 07:28 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
Моя задача такова - программа FactoryLink7 пишет данные на сервер в таблицы table1 и table2, мне надо обьединять данные с обоих таблиц в одной table3, для этого я и использую вышеупомянутый тригер на insert на таблицах table1 и table2. Данные всётки пишутся, изпользуя одну connect-цыю FactoryLink7 изпользует System DSN для записи данных в серверные таблицы. Может быть это неправельное решение данного задания? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2002, 07:52 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
2 Максим: Вам здорово поможет знание таблиц inserted/deleted. Почитайте про них в BOL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2002, 08:18 |
|
||
|
Тригер на insert
|
|||
|---|---|---|---|
|
#18+
2 Максим Странный у Вас талант разъяснять так, что бы было ничего непонятно В общем я понял так, что вам нужно брать записи, которые приходят в table1 и table2 и записывать их в table3, в таком случае последуйте совету MadDog тогда вам яснее станет как правильно писать триггера, если я правильно понял вашу задачу, вам просто нужно брать записи из inserted и заносить их в table3. P.S. Кстати, количество открытых connect-ов никак не влияет на выполнение триггера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2002, 08:27 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32021292&tid=1824231]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
84ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 358ms |

| 0 / 0 |
