🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.delphi.bazy-danych
13 messages
13 total messages Started by J-23 Sun, 14 May 2017 23:57
Zeos ZTable.Delete Lazrus
#82787
Author: J-23
Date: Sun, 14 May 2017 23:57
11 lines
1339 bytes
Witam,

Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable działa 
Delete?

Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. Zawsze 
mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to bład w Zeos 
czy ja cos knocę :)

Pozdrawiam
J-23
Re: Zeos ZTable.Delete Lazrus
#82788
Author: miab
Date: Mon, 15 May 2017 07:48
15 lines
1435 bytes
W dniu 15.05.2017 o 01:57, J-23 pisze:
> Witam,
> 
> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable działa 
> Delete?
> 
> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. Zawsze 
> mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to bład w Zeos 
> czy ja cos knocę :)

Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych komponentów).

miab
Re: Zeos ZTable.Delete Lazrus
#82789
Author: miab
Date: Mon, 15 May 2017 07:56
20 lines
1611 bytes
W dniu 15.05.2017 o 09:48, miab pisze:
> W dniu 15.05.2017 o 01:57, J-23 pisze:
>> Witam,
>>
>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable działa 
>> Delete?
>>
>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. Zawsze 
>> mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to bład w Zeos 
>> czy ja cos knocę :)
> 
> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
> komponentów).

Tak samo zresztą dla Lazarus 1.6.4-Win32 a nawet dla obu równocześnie na 
tej samej tabeli :).

miab
Re: Zeos ZTable.Delete Lazrus
#82790
Author: miab
Date: Mon, 15 May 2017 08:15
19 lines
1577 bytes
W dniu 15.05.2017 o 09:48, miab pisze:
> W dniu 15.05.2017 o 01:57, J-23 pisze:
>> Witam,
>>
>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable działa 
>> Delete?
>>
>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. Zawsze 
>> mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to bład w Zeos 
>> czy ja cos knocę :)
> 
> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
> komponentów).

i dla Delphi 10 Seattle-Win64(tylko exe-k jest 4 razy większy).

miab
Re: Zeos ZTable.Delete Lazrus
#82791
Author: miab
Date: Mon, 15 May 2017 09:13
20 lines
1609 bytes
W dniu 15.05.2017 o 09:48, miab pisze:
> W dniu 15.05.2017 o 01:57, J-23 pisze:
>> Witam,
>>
>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable działa 
>> Delete?
>>
>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. Zawsze 
>> mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to bład w Zeos 
>> czy ja cos knocę :)
> 
> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
> komponentów).

na Ubuntu 16.04LTE-64 MINT Lazarus 1.6-64 i Fedora 25-64 KDE Lazarus 
1.6.2-64 też.

miab
Re: Zeos ZTable.Delete Lazrus
#82792
Author: J-23
Date: Tue, 16 May 2017 01:33
26 lines
2025 bytes
W dniu 15.05.2017 o 11:13, miab pisze:
> W dniu 15.05.2017 o 09:48, miab pisze:
>> W dniu 15.05.2017 o 01:57, J-23 pisze:
>>> Witam,
>>>
>>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable działa 
>>> Delete?
>>>
>>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. Zawsze 
>>> mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to bład w Zeos 
>>> czy ja cos knocę :)
>>
>> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
>> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
>> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
>> komponentów).
> 
> na Ubuntu 16.04LTE-64 MINT Lazarus 1.6-64 i Fedora 25-64 KDE Lazarus 
> 1.6.2-64 też.
> 

Udało, mi się ale powiem szczerze że nie wiem co było powodem że to nie 
działało

Pozdrawiam
J-23
Re: Zeos ZTable.Delete Lazrus
#82793
Author: J-23
Date: Tue, 16 May 2017 02:25
42 lines
2336 bytes
W dniu 16.05.2017 o 03:33, J-23 pisze:
> W dniu 15.05.2017 o 11:13, miab pisze:
>> W dniu 15.05.2017 o 09:48, miab pisze:
>>> W dniu 15.05.2017 o 01:57, J-23 pisze:
>>>> Witam,
>>>>
>>>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable działa 
>>>> Delete?
>>>>
>>>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. Zawsze 
>>>> mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to bład w 
>>>> Zeos czy ja cos knocę :)
>>>
>>> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
>>> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
>>> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
>>> komponentów).
>>
>> na Ubuntu 16.04LTE-64 MINT Lazarus 1.6-64 i Fedora 25-64 KDE Lazarus 
>> 1.6.2-64 też.
>>
> 
> Udało, mi się ale powiem szczerze że nie wiem co było powodem że to nie 
> działało
> 

Dlaczego powyższe nie działa dla masterDetail?

Klucze obce są na poziomie Cascade - więc wydaje się że powinno śmigać

Samo MasterDetail działa znakomicie



Miab wytłumacz mi sens takiego komponentu jak UpdateSQL w Table bo 
kompletnie nie rozumiem


Zeosy mam teraz identyczne jak Twoje

Pozdrawiam
J-23
Re: Zeos ZTable.Delete Lazrus
#82794
Author: wloochacz
Date: Tue, 16 May 2017 07:49
12 lines
1542 bytes
W dniu 2017-05-16 o 04:25, J-23 pisze:

> Miab wytłumacz mi sens takiego komponentu jak UpdateSQL w Table bo
> kompletnie nie rozumiem
A jak zrealizujesz dodatkowe akcje przy insert/update/delete (np. oprócz 
modyfikacji danych w tabeli aktualizacja logu zmian) na danej tabeli, 
jeśli nie chcesz lub nie możysz zrealizować tego przy pomocy triggera na 
bazie danych?


-- 
wloochacz
Re: Zeos ZTable.Delete Lazrus
#82795
Author: miab
Date: Tue, 16 May 2017 08:10
45 lines
2610 bytes
W dniu 16.05.2017 o 04:25, J-23 pisze:
> W dniu 16.05.2017 o 03:33, J-23 pisze:
>> W dniu 15.05.2017 o 11:13, miab pisze:
>>> W dniu 15.05.2017 o 09:48, miab pisze:
>>>> W dniu 15.05.2017 o 01:57, J-23 pisze:
>>>>> Witam,
>>>>>
>>>>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable 
>>>>> działa Delete?
>>>>>
>>>>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. 
>>>>> Zawsze mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to 
>>>>> bład w Zeos czy ja cos knocę :)
>>>>
>>>> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
>>>> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
>>>> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
>>>> komponentów).
>>>
>>> na Ubuntu 16.04LTE-64 MINT Lazarus 1.6-64 i Fedora 25-64 KDE Lazarus 
>>> 1.6.2-64 też.
>>>
>>
>> Udało, mi się ale powiem szczerze że nie wiem co było powodem że to 
>> nie działało
>>
> 
> Dlaczego powyższe nie działa dla masterDetail?
> 
> Klucze obce są na poziomie Cascade - więc wydaje się że powinno śmigać
> 
> Samo MasterDetail działa znakomicie
> 
> 
> 
> Miab wytłumacz mi sens takiego komponentu jak UpdateSQL w Table bo 
> kompletnie nie rozumiem
> 

ZTable to po prostu ZQuery z domyślnym zapytaniem "select * from 
TableName" tak że we wszystkich sytuacjach mniej trywialnych masz 
(podobnie ja dla ZQuery) dzięki ZUpdateSQL możliwość zaaplikowania 
własnych odmiennych od logiki ZEOS-a zapytań aktualizujących.

miab
Re: Zeos ZTable.Delete Lazrus
#82796
Author: miab
Date: Tue, 16 May 2017 08:40
51 lines
2850 bytes
W dniu 16.05.2017 o 04:25, J-23 pisze:
> W dniu 16.05.2017 o 03:33, J-23 pisze:
>> W dniu 15.05.2017 o 11:13, miab pisze:
>>> W dniu 15.05.2017 o 09:48, miab pisze:
>>>> W dniu 15.05.2017 o 01:57, J-23 pisze:
>>>>> Witam,
>>>>>
>>>>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable 
>>>>> działa Delete?
>>>>>
>>>>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. 
>>>>> Zawsze mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to 
>>>>> bład w Zeos czy ja cos knocę :)
>>>>
>>>> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
>>>> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
>>>> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
>>>> komponentów).
>>>
>>> na Ubuntu 16.04LTE-64 MINT Lazarus 1.6-64 i Fedora 25-64 KDE Lazarus 
>>> 1.6.2-64 też.
>>>
>>
>> Udało, mi się ale powiem szczerze że nie wiem co było powodem że to 
>> nie działało
>>
> 
> Dlaczego powyższe nie działa dla masterDetail?
> 
> Klucze obce są na poziomie Cascade - więc wydaje się że powinno śmigać
> 
> Samo MasterDetail działa znakomicie
> 
> 
> 
> Miab wytłumacz mi sens takiego komponentu jak UpdateSQL w Table bo 
> kompletnie nie rozumiem
> 
> 
> Zeosy mam teraz identyczne jak Twoje

Do tego są dwa tryby M-D, zobacz:
https://sourceforge.net/projects/zeoslib/files/documentation/ZeosDocumentationCollection-2017-03-20.pdf/download 

po stronie klienta i po stronie serwera.
Poza tym CachedUpdates i AutoCommit włączone bądź wyłączone, pare 
TransactIsolationLevel i wreszcie specyfika danego serwera i twojej w 
nim bazy, tak że nie zawsze (a nawet dość często) automatyzmy ZEOS-a są 
zdecydowanie nie wystarczające. Trzeba pokombinować samemu.

miab
Re: Zeos ZTable.Delete Lazrus
#82797
Author: J-23
Date: Tue, 16 May 2017 12:20
77 lines
3906 bytes
W dniu 16.05.2017 o 10:40, miab pisze:
> W dniu 16.05.2017 o 04:25, J-23 pisze:
>> W dniu 16.05.2017 o 03:33, J-23 pisze:
>>> W dniu 15.05.2017 o 11:13, miab pisze:
>>>> W dniu 15.05.2017 o 09:48, miab pisze:
>>>>> W dniu 15.05.2017 o 01:57, J-23 pisze:
>>>>>> Witam,
>>>>>>
>>>>>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable 
>>>>>> działa Delete?
>>>>>>
>>>>>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. 
>>>>>> Zawsze mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to 
>>>>>> bład w Zeos czy ja cos knocę :)
>>>>>
>>>>> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
>>>>> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete oraz 
>>>>> delete z dbGrid czy dbNavigator. (Przy ustawieniach domyślnych 
>>>>> komponentów).
>>>>
>>>> na Ubuntu 16.04LTE-64 MINT Lazarus 1.6-64 i Fedora 25-64 KDE Lazarus 
>>>> 1.6.2-64 też.
>>>>
>>>
>>> Udało, mi się ale powiem szczerze że nie wiem co było powodem że to 
>>> nie działało
>>>
>>
>> Dlaczego powyższe nie działa dla masterDetail?
>>
>> Klucze obce są na poziomie Cascade - więc wydaje się że powinno śmigać
>>
>> Samo MasterDetail działa znakomicie
>>
>>
>>
>> Miab wytłumacz mi sens takiego komponentu jak UpdateSQL w Table bo 
>> kompletnie nie rozumiem
>>
>>
>> Zeosy mam teraz identyczne jak Twoje
> 
> Do tego są dwa tryby M-D, zobacz:
> https://sourceforge.net/projects/zeoslib/files/documentation/ZeosDocumentationCollection-2017-03-20.pdf/download 
> 
> po stronie klienta i po stronie serwera.
> Poza tym CachedUpdates i AutoCommit włączone bądź wyłączone, pare 
> TransactIsolationLevel i wreszcie specyfika danego serwera i twojej w 
> nim bazy, tak że nie zawsze (a nawet dość często) automatyzmy ZEOS-a są 
> zdecydowanie nie wystarczające. Trzeba pokombinować samemu.

Dzięki za tę dokumentacje. To po pierwsze

Po drugie przyznam że trochę zardzewiałem w Delphi/Lazarusie nie 
dotykałem go kilka lat. Teraz po wrzuceniu komponentów na nowo 
MasterDetail działa jak należy łącznie z usuwaniem rekordu


Tak nasuneło mi się inne pytanie o CacheUpdate ustawienie wartości na 
true spowoduje że wszystkie operacje dzieją się po stronie klienta do 
chwili ApplyUpdate i CommitUpdate to jest jasne

Ale czym w Zeos w takim razie będzie się to różnić od takiego podejścia

ZConnection.StartTransaction
...
...
...
...
ZConnection.Commit

Operację pomiędzy start a commit będą oczywiście po wykonaniu tego 
drugiego więc przy standardowym poziomie izolacji transakcji jaki daje 
zeos czyli ReadCommited nie będzie to miało różnicy dobrze rozumuje?

Pozdrawiam
J-23
Re: Zeos ZTable.Delete Lazrus
#82798
Author: miab
Date: Tue, 16 May 2017 12:37
86 lines
4462 bytes
W dniu 16.05.2017 o 14:20, J-23 pisze:
> W dniu 16.05.2017 o 10:40, miab pisze:
>> W dniu 16.05.2017 o 04:25, J-23 pisze:
>>> W dniu 16.05.2017 o 03:33, J-23 pisze:
>>>> W dniu 15.05.2017 o 11:13, miab pisze:
>>>>> W dniu 15.05.2017 o 09:48, miab pisze:
>>>>>> W dniu 15.05.2017 o 01:57, J-23 pisze:
>>>>>>> Witam,
>>>>>>>
>>>>>>> Korzystam z 7.2,1 rc i bazy Firbird. Czy w komponencie ZTable 
>>>>>>> działa Delete?
>>>>>>>
>>>>>>> Bo ja tego nie mogę zmusić do działania jak to u Was wygląda. 
>>>>>>> Zawsze mogę to zrobić zapytaniem sql. Ale zastanawiam sie czy to 
>>>>>>> bład w Zeos czy ja cos knocę :)
>>>>>>
>>>>>> Korzystam z ZEOS 7.2 svn 3986, FB 2.56. D2006(w tym momencie :)
>>>>>> Dla tabel nie powiążanych jak najbardziej działa ZTable.Delete 
>>>>>> oraz delete z dbGrid czy dbNavigator. (Przy ustawieniach 
>>>>>> domyślnych komponentów).
>>>>>
>>>>> na Ubuntu 16.04LTE-64 MINT Lazarus 1.6-64 i Fedora 25-64 KDE 
>>>>> Lazarus 1.6.2-64 też.
>>>>>
>>>>
>>>> Udało, mi się ale powiem szczerze że nie wiem co było powodem że to 
>>>> nie działało
>>>>
>>>
>>> Dlaczego powyższe nie działa dla masterDetail?
>>>
>>> Klucze obce są na poziomie Cascade - więc wydaje się że powinno śmigać
>>>
>>> Samo MasterDetail działa znakomicie
>>>
>>>
>>>
>>> Miab wytłumacz mi sens takiego komponentu jak UpdateSQL w Table bo 
>>> kompletnie nie rozumiem
>>>
>>>
>>> Zeosy mam teraz identyczne jak Twoje
>>
>> Do tego są dwa tryby M-D, zobacz:
>> https://sourceforge.net/projects/zeoslib/files/documentation/ZeosDocumentationCollection-2017-03-20.pdf/download 
>>
>> po stronie klienta i po stronie serwera.
>> Poza tym CachedUpdates i AutoCommit włączone bądź wyłączone, pare 
>> TransactIsolationLevel i wreszcie specyfika danego serwera i twojej w 
>> nim bazy, tak że nie zawsze (a nawet dość często) automatyzmy ZEOS-a 
>> są zdecydowanie nie wystarczające. Trzeba pokombinować samemu.
> 
> Dzięki za tę dokumentacje. To po pierwsze
> 
> Po drugie przyznam że trochę zardzewiałem w Delphi/Lazarusie nie 
> dotykałem go kilka lat. Teraz po wrzuceniu komponentów na nowo 
> MasterDetail działa jak należy łącznie z usuwaniem rekordu
> 
> 
> Tak nasuneło mi się inne pytanie o CacheUpdate ustawienie wartości na 
> true spowoduje że wszystkie operacje dzieją się po stronie klienta do 
> chwili ApplyUpdate i CommitUpdate to jest jasne
> 
> Ale czym w Zeos w takim razie będzie się to różnić od takiego podejścia
> 
> ZConnection.StartTransaction
> ....
> ....
> ....
> ....
> ZConnection.Commit
> 
> Operację pomiędzy start a commit będą oczywiście po wykonaniu tego 
> drugiego więc przy standardowym poziomie izolacji transakcji jaki daje 
> zeos czyli ReadCommited nie będzie to miało różnicy dobrze rozumuje?

Wydaje mi się że funkcjonalnie niby niczym jeżeli nie nastąpi zerwanie 
połączenia, natomiast różny jest czas wysyłki danych aktualizujących 
albo po każdej zmianie, drobny udziały rozłożone w czasie i zamknięte 
commit-em albo masowo po ApplyUpdate. Z tym że przy tym drugim możesz 
wielokrotnie zmieniać zawartość rekordu po stronie klienta a i tak 
pójdzie tylko raz stan po wszystkich zmianach.

miab

miab
Re: Zeos ZTable.Delete Lazrus
#82799
Author: J-23
Date: Tue, 16 May 2017 21:08
48 lines
3141 bytes
W dniu 16.05.2017 o 14:37, miab pisze:
> W dniu 16.05.2017 o 14:20, J-23 pisze:
>>
>> Dzięki za tę dokumentacje. To po pierwsze
>>
>> Po drugie przyznam że trochę zardzewiałem w Delphi/Lazarusie nie 
>> dotykałem go kilka lat. Teraz po wrzuceniu komponentów na nowo 
>> MasterDetail działa jak należy łącznie z usuwaniem rekordu
>>
>>
>> Tak nasuneło mi się inne pytanie o CacheUpdate ustawienie wartości na 
>> true spowoduje że wszystkie operacje dzieją się po stronie klienta do 
>> chwili ApplyUpdate i CommitUpdate to jest jasne
>>
>> Ale czym w Zeos w takim razie będzie się to różnić od takiego podejścia
>>
>> ZConnection.StartTransaction
>> ....
>> ....
>> ....
>> ....
>> ZConnection.Commit
>>
>> Operację pomiędzy start a commit będą oczywiście po wykonaniu tego 
>> drugiego więc przy standardowym poziomie izolacji transakcji jaki daje 
>> zeos czyli ReadCommited nie będzie to miało różnicy dobrze rozumuje?
> 
> Wydaje mi się że funkcjonalnie niby niczym jeżeli nie nastąpi zerwanie 
> połączenia, natomiast różny jest czas wysyłki danych aktualizujących 
> albo po każdej zmianie, drobny udziały rozłożone w czasie i zamknięte 
> commit-em albo masowo po ApplyUpdate. Z tym że przy tym drugim możesz 
> wielokrotnie zmieniać zawartość rekordu po stronie klienta a i tak 
> pójdzie tylko raz stan po wszystkich zmianach.
> 


Takie też właśnie wyciągnąłem wnioski po podpięciu SQLMonitora. 
Upewniłeś mnie tylko w tym. Dzięki :)

Może warto by to przebudować tak by tylko po ustawieniu CacheUpdate na 
true zmieniało tryb pracy Start Transaction i Commit tak by się pozbyć 
ApplyUpdate i CommitUpdate aby tryb pracy zależał tylko od CacheUpdate 
false | true.

To taka moja sugestia jak ty to widzisz?

Pozdrawiam
J-23
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads