|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.07.2012, 14:45 | #1 |
Регистрация: 04.07.2012
Сообщений: 4
|
Ошибка 3021
У меня две таблицы - «sh» и «h» . В обе таблицах есть поле h_kod. Нужно удалить те записи из таблицы «h» , значения поля h_kod которых не имеется в таблице «sh». Я написала код, но при запуске дает ошибку 3021.
Подскажите пожалуйста в чем ошибка. Set rstDao_sh = CurrentDb.OpenRecordset("sh") Set rstDao_h = CurrentDb.OpenRecordset("h") Do Until rstDao_h.EOF rstDao_sh.MoveFirst Do Until ((rstDao_sh.EOF) And (rstDao_h.Fields("h_kod").Value <> rstDao_sh.Fields("h_kod").Value)) rstDao_sh.MoveNext Loop If rstDao_sh.EOF Then rstDao_h.Delete rstDao_h.MovePrev End If rstDao_h.MoveNext Loop rstDao_sh.close rstDao_h.close Set rstDao_sh = Nothing Set rstDao_h = Nothing |
04.07.2012, 16:16 | #2 |
Регистрация: 04.07.2012
Сообщений: 4
|
спасибо, уже нашла...
Set rstDao_sh = CurrentDb.OpenRecordset("sh")
Set rstDao_h = CurrentDb.OpenRecordset("h") Dim test As Boolean Do Until rstDao_h.EOF rstDao_sh.MoveFirst test = True Do Until rstDao_sh.EOF Or test = False If rstDao_sh!h_kod = rstDao_h!h_kod Then test = False End If rstDao_sh.MoveNext Loop If test = True Then rstDao_h.Delete End If rstDao_h.MoveNext Loop rstDao_sh.Close rstDao_h.Close Set rstDao_h = Nothing Set rstDao_sh = Nothing |
04.07.2012, 19:04 | #3 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Arega.
если Ваша задача состоит именно в "кодописании" то возможно и оправдано выполнение подобных упражнений. Хотя для удобочитаемости выкладываемый код необходимо заключайте в тэги [соde] ... [/соde] (для этого на панели инструментов и расположена кнопка - #) допускаю, Вы впервые на форуме и могли этого не знать, но занятие "много-строчным кодингом" и разбор его ошибок, если задача решается одной строкой, считаю не только неправильным, но и бесполезным занятием. Но это только моё мнение, Ваше право поступать как считаете нужным, а конструкция может быть такой: Код:
Евгений. |
09.07.2012, 15:30 | #4 |
Регистрация: 04.07.2012
Сообщений: 4
|
Надо же... всего одна строка... и результат такой же...
Спасибо за помощь, Евгений Вы правы, я впервые на форуме... Спасибо за советы, буду учесть их ! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Nero - ошибка драйвера DMA. ошибка CRC | NecRoMat | Софт | 5 | 09.05.2012 01:29 |
Где ошибка в этом исходном коде на языке Си? Или ошибка в Excel? | ArchiCurtis | Помощь студентам | 2 | 07.04.2012 14:16 |
Ошибка run-time Error 1004 общая ошибка ODBC | kaval88 | Microsoft Office Excel | 0 | 27.02.2011 20:20 |
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? | ankris | HTML и CSS | 5 | 23.11.2010 16:58 |
Это ошибка Delphi или моя ошибка??? | bloodeagle | Общие вопросы Delphi | 3 | 12.11.2009 15:26 |