Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
Подскажите,пожалуйста кто знает . Используется MSSQL 2000,ADO 2.6 MyRecordset.CursorType=adOpenStatic MyRecordset.Source= SELECT T1.ID , T1.Name , T2.ID , T2.Name FROM OneTable T1, OneTable T2 WHERE T1.ID=1 AND T2.ID=1 При UpdateBatch получаю такую вот ошибку //Row cannot be located for updating. Some values may have been changed since it was last read.// Проблема возникает только в случае , если в SQL запросе используется одна таблица , с различными псевдонимами. Как обойти эту ошибку? Или каким наиболее простым способом можно обновить таблицу ? МОжет есть какой нибудь трюк с рекордсетом ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2001, 14:22 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
Тоже бился над этой проблемой. Пока безуспешно. А скорее всего, даже не пока . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2001, 16:15 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
SP1 для MDAC 2.6 положения не исправил. Ошибк , правда, стал выдавать другую : "Column name 'my_column' appears more than once in the result column list." Некое подобие выхода из этой ситуации нашел - В запросе используется таблица и view к этой же таблице. Тогда все проходит нормально ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2001, 08:10 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
Странный сорсе, может лучше запрос немного изменить и тогда все ОК будет? Например MyRecordset.Source= SELECT T1.ID , T1.Name , T2.ID , T2.Name FROM OneTable T1, OneTable T2 WHERE T1.ID=T2.ID and T1.ID = 1 Кстати, а зачем такой экзотический запрос? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2001, 08:18 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
SORRY за случайную ошибку , хотел написать что-то вроде // WHERE T1.ID=1 AND T2.ID=2 // SELECT T1.ID , T1.Name , T2.ID , T2.Name FROM OneTable T1, OneTable T2 WHERE T1.ID=1 AND T2.ID=2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2001, 11:06 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2001, 11:41 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
OK . Абстрактный пример . Есть три таблицы : РЕЗУЛЬТАТ<-ДЕЙСТВИЕ->ОПИСАНИЕ_ДЕЙСТВИЯ . Ссылки отобразил стрелками Теперь отображаем РЕЗУЛЬТАТы с входящими в него некоторыми действиями SELECT РЕЗУЛЬТАТ.ID , РЕЗУЛЬТАТ.Name , ДЕЙСТВИЕ1.ID , ДЕЙСТВИЕ1.Date , ДЕЙСТВИЕ2.ID , ДЕЙСТВИЕ2.Date FROM РЕЗУЛЬТАТ , ДЕЙСТВИЕ ДЕЙСТВИЕ1 , ДЕЙСТВИЕ ДЕЙСТВИЕ2 WHRERE ДЕЙСТВИЕ1.ID = 'Start' , ДЕЙСТВИЕ2.ID = 'End' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2001, 13:45 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
Sorry , опять забыл WHRERE ДЕЙСТВИЕ1.ID = 'Start' , ДЕЙСТВИЕ2.ID = 'End' AND ДЕЙСТВИЕ1.РезультатИд=РЕЗУЛЬТАТ.ID AND ДЕЙСТВИЕ2.РезультатИд=РЕЗУЛЬТАТ.ID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2001, 13:59 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
Пример действительно абстрактный, так как ничего не объяснил, но восхищение вызвал Дважды декартово произведение Результат на Действие - это круто правда смыла запроса я все равно не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2001, 14:00 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
Вчера наверное одновременно запостили, поэтому не увидел Вашей поправки WHRERE ДЕЙСТВИЕ1.ID = 'Start' , ДЕЙСТВИЕ2.ID = 'End' AND ДЕЙСТВИЕ1.РезультатИд=РЕЗУЛЬТАТ.ID AND ДЕЙСТВИЕ2.РезультатИд=РЕЗУЛЬТАТ.ID По этому уловию вернется пустой рекордест, Вы дважды соединили Действие и Результат, по одному и тому же условию поэтому ДЕЙСТВИЕ1.ID = ДЕЙСТВИЕ2.ID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2001, 05:31 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
Попробуй создать VIEW с опцией with VIEW_METADATA плюс instead-триггеры, преобразующие операции вставки/модификации/удаления записей к операциям над соответствующей таблицей. Без этой опции на клиент передаются сведения о всех таблицах, на котороых основан запрос, и операции вставки/модификации/удаления пытаются произвестись во всех участвующих в т запросе таблицах. Поскольку запрос основан на одной таблице дважды, в ней все операции пытаются выполняться дважды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2001, 07:47 |
|
||
|
UpdateBatch при обновл. SQL запроса сост из одной таблицы с разл псевдонимами
|
|||
|---|---|---|---|
|
#18+
To Genady : Sorry за ошибки с моей стороны , хотел написать что то вроде : WHERE ДЕЙСТВИЕ1.ОПИСАНИЕ_ДЕЙСТВИЯ_ID = 'Start' , ДЕЙСТВИЕ2.ОПИСАНИЕ_ДЕЙСТВИЯ_ID = 'End' AND ДЕЙСТВИЕ1.РезультатИд=РЕЗУЛЬТАТ.ID AND ДЕЙСТВИЕ2.РезультатИд=РЕЗУЛЬТАТ.ID Где ОПИСАНИЕ_ДЕЙСТВИЯ_ID - FK к таблице ОПИСАНИЕ_ДЕЙСТВИЯ To Garya : Спасибо за совет , правда еще не пробовал , т.к. больше двух псевдонимов пока не использую , т.е. пока могу обойтись одним вьюером и таблицей . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2001, 08:44 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32008452&tid=1826321]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
23ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 304ms |

| 0 / 0 |
