powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / DW delete All row
14 сообщений из 14, страница 1 из 1
DW delete All row
    #32816277
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообшем как удалить все записи из DW (не ипользуя цикл)

Код: plaintext
dw_1.deletedcount( )
- что то не работатет
...
Рейтинг: 0 / 0
DW delete All row
    #32816311
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIGITALPROВообшем как удалить все записи из DW (не ипользуя цикл)
Код: plaintext
dw_1.Reset()

dw_1.deletedcount( ) - что то не работатет
Работает. Но записи из DW не удаляет, ибо не для того создано .
...
Рейтинг: 0 / 0
DW delete All row
    #32816325
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перекинуть из Primary в Deleted с помощью функции dw.RowsMove(...)
...
Рейтинг: 0 / 0
DW delete All row
    #32816353
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
dw_1.Reset()
Не удаляет, просто как то очищает, если сделать Update, Commit потом Retrieve записи опять на экране.

Код: plaintext
dw_1.deletedcount( ) 
Для чего созданно?

Андрей, а можно по подробнее, а то ничего не понял.
===============================
PB 9.0.1 (7236) ASA 9.0.0 (1312)
...
Рейтинг: 0 / 0
DW delete All row
    #32816381
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если хочется всю таблицу очистить, то гораздо быстрее будет в коде написать "DELETE FROM Table;" с последующим COMMIT и перечитать DW.
...
Рейтинг: 0 / 0
DW delete All row
    #32816405
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIGITALPROdw_1.Reset()
Не удаляет, просто как то очищает,
А это не одно и то же ;)?

если сделать Update, Commit потом Retrieve записи опять на экране.
Для удаления записей из БД есть оператор DELETE FROM ...
...
Рейтинг: 0 / 0
DW delete All row
    #32816408
Guest_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ASCRUSЕсли хочется всю таблицу очистить, то гораздо быстрее будет в коде написать "DELETE FROM Table;" с последующим COMMIT и перечитать DW.

Тогда уже TRUNCATE TABLE Table
...
Рейтинг: 0 / 0
DW delete All row
    #32816419
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guest_1 ASCRUSЕсли хочется всю таблицу очистить, то гораздо быстрее будет в коде написать "DELETE FROM Table;" с последующим COMMIT и перечитать DW.

Тогда уже TRUNCATE TABLE Table
А вот это уже смотря для какой СУБД, не стоит забывать об этом :)
...
Рейтинг: 0 / 0
DW delete All row
    #32816430
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Dim2000

Вопрос звучал, как удалить запсись из DW, а не скрыть
ведь dw_1.deleteRow (Long) пользуются, удаляет из быза и dw

Таблица из которой будут удалятся данные очищается не вся.
Решил
delete * from ... where

И все же для чего служит
Код: plaintext
dw_1.deletedcount( )

===============================
PB 9.0.1 (7236) ASA 9.0.0 (1312)
...
Рейтинг: 0 / 0
DW delete All row
    #32816444
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторDIGITALPRO
dw_1.Reset()
Не удаляет, просто как то очищает,
А это не одно и то же ;)?
нет. dw_1.Reset() - просто сбрасывает (очищает) буферы dw_1, но ничего в БД не делает.
...
Рейтинг: 0 / 0
DW delete All row
    #32816453
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторИ все же для чего служит
dw_1.deletedcount( )
Для подсчета количества строк находящихся в буфере удаления (deleted!) DataWindow Control'a.
...
Рейтинг: 0 / 0
DW delete All row
    #32816557
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ermakнет. dw_1.Reset() - просто сбрасывает (очищает) буферы dw_1, но ничего в БД не делает.
Я знаю, что делает dw.Reset() ;). Но под формулировку "удалить данные из DW " dw.Reset() тоже подпадает, т.к. про удаление из БД ничего не говорится .
...
Рейтинг: 0 / 0
DW delete All row
    #32816657
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIGITALPROАндрей, а можно по подробнее, а то ничего не понял.
Данные, которые находятся в DW делятся на 3 набора
1. Primary! - те, что видны, грубо говоря
2. Deleted! - те, что не видны, поскольку были удалены
3. Filter! - те, что не видны, поскольку не подошли под условие фильтра (filtered out)

Есть функция перемещения строк.
Код: plaintext
RowsMove(start_row, end_row, <из какого буфера>,<в какое dw>, <после какой строки вставлять>, <в какой буфер>)  
перемещение строки из Primary! в Deleted! абсолютно аналогично выполнению dw.DeleteRow(n)
соответственно чтобы перекинуть все строки с первой до последней в том же самом dw в буфер Deleted! надо сделать следующее:
Код: plaintext
dw_1.RowsMove( 1 , dw_1.RowCount(), Primary!, dw_1, dw_1.DeletedCount()+ 1 , Deleted!)
ну и возвращаемое значение на 1 проверить надо.

З.Ы. Если dw не updateable, то нет буфера Deleted! со всеми вытекающими...
...
Рейтинг: 0 / 0
DW delete All row
    #32819247
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей, огромное СПАСИБО.
Действительно все работает
только у меня вместо deleted надо delete.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / DW delete All row
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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