powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ADP. Что за глупые вопросы....
25 сообщений из 58, страница 2 из 3
ADP. Что за глупые вопросы....
    #32211802
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а триггер пишет данные случаем не в подчиненную таблицу?
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32211809
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут фишка вот в чем: если ключевое поле - счетчик, то ADO в команде синхронизации подставляет вместо "?" значение @@Identity. А оно уже не актуально после вставки триггером записей в другие таблицы, и команда синхронизации возвращает (как правило) 0 строк вместо одной, что и приводит к ошибке. Как в этом случае помогают скобочки для меня полная загадка.
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32211818
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что профайлер говорит на скобки?
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32211828
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>а триггер пишет данные случаем не в подчиненную таблицу?

Нет

>а что профайлер говорит на скобки?

А скобок уже нет :) когда были - не смотрел

>Как в этом случае помогают скобочки для меня полная загадка.

Ага. Для меня тоже. Вообще лучше Акес назвали бы Enigma :)
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32211834
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AcSex :)
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32211865
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AcSex+MS SQL=Скулёж
==
дал Savik
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32227432
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подниму как я тему - ввиду того что опять сообщение об ошибки стало снова выскакивать.
Как и говорил Pavel ебучий акес ставит вместо ? - Select @@Identity.
А @@Identity содержит уже счетчик таблицы которую триггер обновил.
Пиписец/ Ставить скобки не помогает. Профайлер на них кстати не ругается.
Ставил в команду синхронизации dbo.myXP ? (нифига не помогло)

==
На таблице 3 триггера: 1 здоровый и обновляет 4 таблицы (из самой последней и тащиться Select @@Identity) остальный: лог.
На подчиненой форме - триггеров нет.
Хотя источник у форм стоит ХП (команда синхронизации таже ХП), в коде открытия источником становиться инструкция селект с IN (Номера счетчиков которые я хочу видеть)
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32227541
Обычный ответ:
В начале триггера
Код: plaintext
1.
Declare @LastIdent Int, @s as varchar( 255 )
Set @LastIdent = @@Identity

в конце
Код: plaintext
1.
2.
3.
 -------------- Correct Identity -------------------
 
set @s = 'SELECT Identity(Int, ' + CAST(@LastIdent as varchar( 10 )) + ', 1 ) as i INTO #_T'
EXEC (@s)
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32227587
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Владимир Смирнов

Спасибо. При огромное. Заработало :)

==
Вот, блин, что значит конгда зае%шься :) шары на глазах.
Коль акес хочет выбирать последний вставленный счетчик, так ему и надо его дать. Простой вставкой во временную таблицу.
Гениально и просто. а я ужу инстед оф триггер городить начал :(
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32227657
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, ей богу - это надо в фак. Да простит мен А.Митин (am), но решения на его сайте - не есть хорошие решения. Хотя бы взять INSTED OF триггер, в котором надо будет внести строку с ключом, а для этого надо указывать
set IDENTITY_INSERT ON, что не возможно если юзер не обладает права sysadmin|db_ddladmin|db_owner.
Я уже привелегии раздавать хотел :) пока не появился В. Смирнов, чье решение более красиво (уж не знаю как в плане скорости выполнения, но вроде из-за динамического SQL будет всегда перекомпиляция).
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32227658
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, ей богу - это надо в фак. Да простит мен А.Митин (am), но решения на его сайте - не есть хорошие решения. Хотя бы взять INSTED OF триггер, в котором надо будет внести строку с ключом, а для этого надо указывать
set IDENTITY_INSERT ON, что не возможно если юзер не обладает права sysadmin|db_ddladmin|db_owner.
Я уже привелегии раздавать хотел :) пока не появился В. Смирнов, чье решение более красиво (уж не знаю как в плане скорости выполнения, но вроде из-за динамического SQL будет всегда перекомпиляция).
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32227834
Владимир Смирнов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это идея не моя. Я на это решение наткнулся в инете года три-четыре назад (автора не помню), когда у меня была аналогичная проблема.
С тех пор для меня это шаблонное решение (чего и другим советую).
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32227991
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Senin Viktor

ну значит тебе и FAQ in hands
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32229667
am (a_mitin)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да простит мен А.Митин (am), но решения на его сайте - не есть хорошие решения.
Упс... :( Наехали ни за что ;(

Я не говорю что все решения на моём сайте идеальны, но некоторые очень даже ничего ;-)
Кстати, кто знает лучшее решение - у меня на сайте всегда может добавить его сам (либо как новую статью, либо как комментарий к существующей). Добро пожаловать! ;))


ЗЫ: Или я уже владельцем hiprog стал?
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32229732
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2am

>Упс... :( Наехали ни за что ;(
>ЗЫ: Или я уже владельцем hiprog стал?

Андрей, извини.
Не понятно с чего, перепутал твой сайт am.russimpоrt.ru c hiprog.ru


==
Не все, пора в отпуск.
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32229747
am (a_mitin)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей, извини.
дану ерунда
лишний раз про возможности сайта рассказал ;))))
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32229762
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>лишний раз про возможности сайта рассказал ;))))

Кто не был - быстро туда! :)

http://am.rusimport.ru/msaccess- там куча полезной инфы.

==
Не много рекламы хорошому сайту не помешает
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32229786
Фотография TatianaT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тоже подтверждаю - очень хороший и полезный сайт
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32229844
am (a_mitin)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто не был - быстро туда! :)


(ЗЫ: похоже с меня бутылка пива в Анапе
)
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32229854
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 am
>похоже с меня бутылка пива в Анапе

Хотя пью редко и мало, но с тобой - с удовольствием
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32230169
Senin Viktor wrote
Хотя бы взять INSTED OF триггер, в котором надо будет внести строку с ключом, а для этого надо указывать
set IDENTITY_INSERT ON, что не возможно если юзер не обладает права sysadmin|db_ddladmin|db_owner.


Вы просто плохо прочитали статью, я ничего не говорил про эту (set IDENTITY_INSERT ON) команду, она там совершенно не нужна.
Решение, опубликованное Владимир Смирнов_, действительно более привлекательно, так как будет работать и на семерке.
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32230191
am (a_mitin)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь что Татьяну за рекламу забыл сразу поблагодарить...
Татьян, а Вы пиво пьёте? ;)
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32230199
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Дмитрий Филатов
>Вы просто плохо прочитали статью, я ничего не говорил про эту (set IDENTITY_INSERT ON) команду, она там совершенно не нужна.

Статью я прочитал внимательно, просто перешел от теории к практике :)

При INSTED OF триггере в таблице Inserted лежат все значения, акромя счетчика (он равен нулю).
А мне это значение нужно для последующего обновления/вставки 4 таблиц.
Выход, который я нашел (возможно в корне не верный) найти значение последнего счетчика +1. Далее добавляем записи из Inserted с опцией IDENTITY_INSERT ON, чтобы обновить счетчик найденным выше значением+1. Эту операцию выполнеям последней в триггере, что бы Select @IDENTITY вернуло Акесу верное значение, без которого опять получаеться лажа - и Select @IDENTITY возвращает значение счетика от 4 таблицы.
Можно было сделать проще?
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32230206
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 am & All

Тааак
Все дружно хвалим сайт Андрея Митина и получаем от него по пиву
==
Хотя, вообще-то, это мы должны ему проставляться - за труд.
Так что, если увидимся в Анапе - пиво с меня. И не возражать!
...
Рейтинг: 0 / 0
ADP. Что за глупые вопросы....
    #32230247
am (a_mitin)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спокойно. Кол-во пива ограничено ;)))
Уж нельзя с девушкой пофлиртовать

Татьян, может бокальчик вина? ;-)
...
Рейтинг: 0 / 0
25 сообщений из 58, страница 2 из 3
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ADP. Что за глупые вопросы....
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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