powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / MS ADO Data Control
8 сообщений из 8, страница 1 из 1
MS ADO Data Control
    #32336537
vadpet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, все!
Использую в приложении компонент MS ADO Data Control,ver 6.0 (OLEDB)
Связываю с компонентом переменную m_pAdo
Пытаюсь изменить поле в базе
...
Sql="Update PropFun SET var3=3 Where key=239";
m_pAdo.SetRecordSource(Sql);
m_pAdo.Refresh();
...

на выполнении Refresh() получаю "Operation is not allowed when the object is closed" и по Exception выполнение блока прерывается. При этом в базе изменения выполняются. Аналогичная ситуация при попытке выполнения запроса на добавления. О каком закрытом объекте идет речь в сообщении?
Заранее благодарен ,Вадим.
...
Рейтинг: 0 / 0
MS ADO Data Control
    #32336581
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А по-подробнее можно код?
Создание, инициализация...
...
Рейтинг: 0 / 0
MS ADO Data Control
    #32336640
vadpet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Основные свойства компонента установлены следующими
CommandType 8- Unknown CommandType
ConnectionString DSN=FunDB ( FunDB - источник данных ODBC .mdb)
CursorLocation 3-Use client cursors
CursorType 1 - Keyset CursorType
LockType 3
RecordSource Select * From PropFun

При загрузке приложения выборка загружается в Grid (MS Data Grid Control) и все отображается как положено. Далее при нажатии на кнопку выполняется обработчик

void CTotfunClientDlg::OnOK()
{
Sql="Update PropFun SET var3=3 Where key=239";
m_pAdo.SetRecordSource(Sql);
m_pAdo.Refresh();
}

Здесь и возникают вышеуказанные проблемы
...
Рейтинг: 0 / 0
MS ADO Data Control
    #32336690
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй
LockType сделать adLockUnspecified


MSDN писал:"optimistic locking—locking records only when you call the Update method"
...
Рейтинг: 0 / 0
MS ADO Data Control
    #32336864
vadpet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все разумные комбинации propities я уже перепробовал (собственно с этого начал). Тем не менее еще раз попробовал с adLockUnspecified - результат тот же. Конечно можно все это сделать напрямую используя классы ADO, код получиться на десяток операторов больше, но все таки интересно бы добить с компонентом.
...
Рейтинг: 0 / 0
MS ADO Data Control
    #32337123
DJStealth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сначало отруби сушествующий коннект, затем переши запрос в рекорсете, а уже потом сделай открытие.
...
Рейтинг: 0 / 0
MS ADO Data Control
    #32361496
V-v
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
V-v
Гость
vadpet, прикинь, та же фигня... Пишу прогу, записывающую в таблицу данные - данные записываются, но та же ошибка вылетает...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
query= "SET NOCOUNT ON UPDATE A_Signal SET V_Dav=" +Davl+ ", V_Tem=" +Temp+ " WHERE ID_Dat=" +IDDat;



CString connect= "Provider=MSDASQL.1 ;Persist Security Info=False;User ID=sa;Data Source=AXP;Mode=ReadWrite;Initial Catalog=SSBS";



m_Adodc.SetCommandType( 1 ); //SQL

m_Adodc.SetConnectionString(connect);

m_Adodc.SetRecordSource(query);

m_Adodc.Refresh();

...

Если вдруг чего надыбал разумного - отпиши, плиз....
...
Рейтинг: 0 / 0
MS ADO Data Control
    #32363861
V-v
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
V-v
Гость
А вот и ответ:\r
/topic/66002
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / MS ADO Data Control
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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