![]() |
Модераторы: Akina |
![]() ![]() ![]() |
|
prishelec |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 24.10.2006 Репутация: нет Всего: нет |
Доброе время суток!
Ситуация такая: имеется БД Access. К ней подключен элемент Data. Необходимо обновить ряд полей в одной из таблиц. Используется код: Dim SQL as String SQL = "UPDATE Таблица SET Таблица.Столбец3 = 1 WHERE Таблица.Столбец3 = " + _ Переменная + ";" Data1.RecordSource = SQL Ошибок при выполнении не происходит. Но, вместо того, чтобы обновлять соответствующие поля, запрос целиком удаляет!!! строки отвечающие условию WHERE!!!! ![]() В чем подвох? Помогите кто знает! |
|||
|
||||
boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 12 Всего: 35 |
При операции update не происходит извлечение записей из таблицы.
Поэтому RecordSource не получает записи. Лучше и правильнее использовать ADODB.Connection метод execute и т.д.. Поиск по форуму даст ответ как использовать вышеназванные элементы. -------------------- Никогда не говори никогда |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
![]() Вот уж воистину "программа делает то, что скажешь, а не то что хочешь"... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
prishelec |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 24.10.2006 Репутация: нет Всего: нет |
Еще как происходит! Извлекаются начисто! ![]() А как Вы объясните следующее... После выполнения кода: Dim SQL As String SQL = "SELECT * FROM Таблица WHERE (Таблица.Столбец3 = " + Переменная + ");" Data1.RecordSource = SQL Data1.Refresh Text1.DataField = "Столбец3" вручную меняешь значения в текстовом поле, перемещаешся по Рекордсету с помощью стрелок элемента Data, а в конце Data1.Refresh все работает и значения обновляются. А вот тоже самое программным способом: Dim SQL As String SQL = "SELECT * FROM Таблица WHERE (Таблица.Столбец3 = " + Переменная + ");" Data1.RecordSource = SQL Data1.Refresh Text1.DataField = "Столбец3" Do Until Data1.Recordset.EOF Text1.Text = "1" Data1.Recordset.MoveNext Loop Результат как в первом сообщении. Строки целиком удаляются!!! ![]() Что скажете? |
|||
|
||||
prishelec |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 24.10.2006 Репутация: нет Всего: нет |
Все, спасибо всем, сам разобрался.
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "VB6" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | VB6 | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |