[DELPHI] Różnica między RowsAffected a RecordCount

0

Witam,

Może mi ktoś wyjaśnić jaka jest różnica pomiędzy RowsAffected a RecordCount?
Mam sobie TQuery połączone do DataSource i czasami dla tego samego zapytania pytania
RecordCount=-1 a rowsaffected ileś tam albo na odwrót rowsaffected =0 a recordcount ileś tam.
Sam problem rozwiązałem dość okrężnie wybierając Max(RecordCount, RowsAffected) ale wiem, że to nie jest najlepsze rozwiązanie.

Pozdrawiam

0

RecordCount zwraca ilość rekordów w tabeli, a RowsAffected zwraca ilość zmienionych rekordów i działa dla dyrektyw INSERT, UPDATE i DELETE.

0
penol napisał(a)

Witam,

Może mi ktoś wyjaśnić jaka jest różnica pomiędzy RowsAffected a RecordCount?

a help pewnie milczy na ten temat jak zaklęty ...

Sam problem rozwiązałem dość okrężnie wybierając Max(RecordCount, RowsAffected) ale wiem, że to nie jest najlepsze rozwiązanie.

Mam jakieś dziwne wrażenie, że to nie jest wcale rozwiązanie ale marna proteza, która zacznie sprawiać kłopoty w najmniej oczekiwanym momencie (a zacznie na pewno). I coś mi się tak dziwnie wydaje, że chodzi Ci o ilość rekordów, które zwraca to zapytanie. Jeśli tak to albo wcześniej zrób SELECT COUNT() FROM tabela WHERE twoj_warunek albo dodaj COUNT() jako dodatkową kolumnę do Twojego zapytania (będzie trochę więcej danych leciało ale będziesz miał jedno zapytanie)

0
drumers napisał(a)

RecordCount zwraca ilość rekordów w tabeli
Niekoniecznie... Powinien zwracać ilość rekordów otrzymanych w wyniku użycia SELECT. Z RowsAffected się zgadzam - to ilość rekordów na których została wykonana operacja...
RecordCout - użyj jeśli wykonałeś zapytanie SELECT...
RowsAffected - użyj jeśli wykonałeś zapytanie INSERT, UPDATE czy DELETE

1 użytkowników online, w tym zalogowanych: 0, gości: 1