Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Присоединенные представления (View) SQL сервера к Access / 22 сообщений из 22, страница 1 из 1
23.09.2004, 16:08:47
    #32708903
VictorMiG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
Народ!
У меня такая проблема.
На SQL сервере я создал представление (view) и присоединил его к БД
Access97 как присоединенную таблицу. При соединении view руками определил уникальный индекс. View представляет собой несколько таблиц, со связями INNER и LEFT JOIN.Это представление я использую как источник данных для формы.
Все данные в форме появляются и все хорошо, но я что-то меняю в форме
через Me и пытаюсь сохранить изменение через
DoCmd.RunCommand acCmdSaveRecord. Система выдает сообщение об ошибке
обновления присоединенной таблицы.

Чем можно помочь в этой ситуации, а может у меня не правильный подход?
...
Рейтинг: 0 / 0
23.09.2004, 16:38:32
    #32708988
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
либо вьюхе надо прописать опцию view_metadata либо задать уникальную таблицу и строку синхронизации для формы
...
Рейтинг: 0 / 0
23.09.2004, 16:44:52
    #32709000
Andy_new
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
Может быть я и ошибаюсь, но при наличии LEFT JOIN обновить представление не получится, стоит написать процедуру обновления.
...
Рейтинг: 0 / 0
23.09.2004, 16:45:15
    #32709001
Proga
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
Совет не заморачивайся с вьюшками, пиши ХП
...
Рейтинг: 0 / 0
23.09.2004, 17:02:51
    #32709057
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
ProgaСовет не заморачивайся с вьюшками, пиши ХП
В продолжение темы:
Сделал таку штуку в модуле формы:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Private rstRecMe As New ADODB.Recordset
Private rstRecMeNew As New ADODB.Recordset
Private refToSubForm As Form

 ' Загрузка формы: 

Me.PropSub.SourceObject = strFormSubName
Set refToSubForm = Me.PropSub.Form
rstRecMe.CursorLocation = adUseClient
rstRecMe.Open "exec PredstProp 0", cnnPrj, adOpenKeyset, adLockOptimistic
rstRecMe.MoveFirst
On Error GoTo Err_RecordRead  
Set rstRecMeNew = rstRecMe.Clone()
rstRecMeNew.MoveFirst
Set refToSubForm.Recordset = rstRecMeNew
Set rstRecMeNew.ActiveConnection = Nothing

Почему же не дает редактировать данные???
При попытке в поле вводить данные, пишет, что поле такое-то основано на выражении, его изменение не допускается.
...
Рейтинг: 0 / 0
23.09.2004, 17:22:48
    #32709118
Proga
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
2 Bagin: Посмотри на свой код со стороны автора топика, по-моему без поллитра не разберёшься, или выкладывай полный код для понимания.
...
Рейтинг: 0 / 0
23.09.2004, 18:08:17
    #32709219
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 ' Создаю ADODB.RecordSet: 
Private rst As New ADODB.Recordset
Private rstClone As New ADODB.Recordset
Private Sub Form_Load()
 ' Открываю рекордсет: 
rst.CursorLocation = adUseClient
rst.Open "exec PredstProp 0", cnnPrj, adOpenKeyset, adLockOptimistic
 ' Создаю клон рекордсета: 
Set rstClone = rst.Clone()
rstClone.MoveFirst     ' На всякий случай 
 ' Привязываю клон рекордсета к форме: 
Set Me.Recordset = rstClone
 'Отсоединяю клон рекордсета: 
Set Me.ActiveConnection = Nothing
End Sub
После последней команды:
Код: plaintext
1.
 'Отсоединяю клон рекордсета: 
Set Me.ActiveConnection = Nothing
данные должны быть доступны для редактирования через форму.
Данные появляются на форме, но поменять их значения нельзя.
Никак не пойму, где я затупил :(
...
Рейтинг: 0 / 0
23.09.2004, 18:24:05
    #32709239
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
Уверен ?

'Отсоединяю клон рекордсета:
Set Me.ActiveConnection = ...

а не так ?
Me.Recordset.ActiveConnection = nothing
...
Рейтинг: 0 / 0
23.09.2004, 18:43:10
    #32709266
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
АлексейКа не так ?
Me.Recordset.ActiveConnection = nothing
Извините, опечатался когда код упрощал для удобства восприятия.
Установлено так:

Set rstClone.ActiveConnection = Nothing

Когда сделал
Set Me.Recordset.ActiveConnection = Nothing
то все равно ничего не изменилось
...
Рейтинг: 0 / 0
23.09.2004, 18:44:56
    #32709269
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
аксесс 2000 или 2002 ?
...
Рейтинг: 0 / 0
23.09.2004, 18:55:11
    #32709285
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
АлексейКаксесс 2000 или 2002 ?

2003 SP1
...
Рейтинг: 0 / 0
23.09.2004, 18:56:36
    #32709287
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
а изначальный набор данных обновляемый ?
...
Рейтинг: 0 / 0
23.09.2004, 18:59:29
    #32709292
Proga
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
А как у нас поживают первичные ключи?
...
Рейтинг: 0 / 0
23.09.2004, 19:00:23
    #32709294
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
АлексейКа изначальный набор данных обновляемый ?
На сколько понимаю да (ведь указаны опции adOpenKeyset и adLockOptimistic):

rst.Open "exec PredstProp 0", cnnPrj, adOpenKeyset, adLockOptimistic
...
Рейтинг: 0 / 0
23.09.2004, 19:01:53
    #32709298
Proga
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
Это не факт, если даже нельзя отредактировать таблу, то долго будешь париться
...
Рейтинг: 0 / 0
23.09.2004, 19:04:33
    #32709302
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
ProgaА как у нас поживают первичные ключи?
ХП выдает набор из таблицы, в этом наборе есть поле, которое является первичным ключом.
При попытке через форму менять данные, пишет, что поле такое-то основано на выражении, его изменение не допускается.
...
Рейтинг: 0 / 0
23.09.2004, 19:05:07
    #32709303
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
а изначальный набор данных обновляемый ?

а ты проверь :
открой базовый запрос в виде таблички и попробуй что - нибудь изменить
...
Рейтинг: 0 / 0
23.09.2004, 19:05:52
    #32709305
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
ProgaЭто не факт, если даже нельзя отредактировать таблу, то долго будешь париться
т.е.?
...
Рейтинг: 0 / 0
23.09.2004, 19:12:47
    #32709313
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
АлексейКа изначальный набор данных обновляемый ?

а ты проверь :
открой базовый запрос в виде таблички и попробуй что - нибудь изменить
Как это сделать в коде не знаю :-(
...
Рейтинг: 0 / 0
23.09.2004, 19:23:15
    #32709330
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
а зачем в коде - открой в аксессе запросы
найди там PredstProp
кликни по нему мышкой
когда спросит параметр скажи 0
и попробуй его редактировать
...
Рейтинг: 0 / 0
23.09.2004, 19:29:50
    #32709339
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
АлексейКа зачем в коде - открой в аксессе запросы
найди там PredstProp
кликни по нему мышкой
когда спросит параметр скажи 0
и попробуй его редактировать
Дело в том, что у меня mde-файл, и все запросы к серверу я формирую в коде.
На всякий случай попробовал создать сохраненный запрос в аксесе, но редактировать не дает.
...
Рейтинг: 0 / 0
23.09.2004, 19:57:09
    #32709357
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Присоединенные представления (View) SQL сервера к Access
Попробовал вот еще:

rst.Properties("Unique Table").Value = "My Table"

но не помогло
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Присоединенные представления (View) SQL сервера к Access / 22 сообщений из 22, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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