Article View: pl.comp.lang.delphi.bazy-danych
Article #70278Re: ADUpdateSQL , generowanie zapytan, po co wrzuca na koncu select
From: wloochacz
Date: Tue, 03 Jul 2007 13:21
Date: Tue, 03 Jul 2007 13:21
75 lines
4625 bytes
4625 bytes
>>> bo tak radziles gdy sie przesiadlem na AnyDAc :)
>> Bzdura; radziłem zastosować CachedUpdates i pokazałem jak skutecznie
>> zapisać zmiany w bazie z wykorzystaniem takich ustawień AnyDAC'a.
>> Ale włączenie buforowanie zmian i zapisywanie tych zmian trwale do
>> bazy po każdym Post na datasecie jest bez sensu.
>
> szkopul w tym ze gdy nie mialem ustawionego cached Updates, to nie
> chcialo mi fizycznie zapisywac rekordow w bazie no i skoro wychwalales
> pod niebiosa te biblioteke nie przyslzo mi do glowy ze to w yniku
> niedorobki, uznalem wiec ze tak nalezy robic.
To nie jest niedoróbka AnyDAC'a tylko Twoja niewiedza, a to nie
usprawiedliwia niczego.
Ciekawe dlaczego mi (i nie tylko mi) działa?
>> Problem polega na tym że Ty nie programujesz tylko używasz komponentów,
>
> gdybym chcial programowac to bym uzyl plikow naglowkowych mssql, i pisal
> w codeblock a nie w delphi. Ktos tu zreszta nie dawno pisal o ulatwianiu
> sobie pracy.
Mylisz pojęcia; to że Delphi jest obiektowe to nie znaczy że
automatycznie wszyscy piszą *obiektowo*. Przerażająca większość używa
obiektów, a nie pisze obiektowo - to jest fundamentalna różnica.
Wracając do AnyDAC'a - to jest dość skomplikowana biblioteka, zgrabnie
opakowana w komponenty. Ale żeby z niej umiejętnie skorzystać trzeba
poświęcić trochę więcej czasu niż pacnięcie 4 komponentów na formę.
Trzeba, ponieważ nie jest podobna do niczego, co było dostępne w Delphi
(mam na mysli m.in. obsługę widoków, mechanizmów i coś co się zowie
DataS layer).
>> a to trochę za mało, żeby skutecznie wykorzystać AnyDAC'a;
>> dokumentacja jest kiepska i jest mało ludzi którzy go używają. Trzeba
>> trochę myśleć, mieć doświadczenie w Delphi i bazach danych trochę
>> większe niż początkujące.
>> Poza tym mam wrażenie, poparte Twoimi wypowiedziami, że brakuje Ci
>> solidnych podstaw w znajomości programowania baz danych jako takich i
>> w Delphi również.
>
> Nie wiem co rozumiesz podpodstawy programowania, umiem tyle ile jest w
> ksiazkach a w tych niesttey nie ma ciekawszych rzeczy procz podstaw.
Zatrudnij się gdzieś i jak już masz za sobą książki to zacznij czytać
dokumentację, kod źródłowy i zachodnie listy dyskusyjne. Tam się
otrzaskasz ;-)
[ciach]
> Co do pytania o blob, jak pisalem nie zwrocilem uwagi na kod, a w
> pamieci mialem post w ktorym pisales
>
> // dodanie nowego pliku
> ADOQuery.SQL.Text := ('select id, plik from tabelka');
> ADOQuery.Open;
> ADOQuery.Append;
> TBlobField(ADOQuery.FieldByName('plik')).LoadFromFile('sciezka do pliku');
> ADOQuery.FieldByName('id').Value := jakies_id_alb_i_nie;
> ADOQuery.Post;
>
> Nie bylo wiec tam Dataset.FieldByNAme('plik').LoadFrom ...
> tylko ADoQuery, a ze leniwy jestem to nie sparawdzalem przed pytaniem
> czy tak samo bedzie w ADQuery.
I to jest właśnie brak podstaw!!
Zauważ, że rzutuję pole (TField) na TBlobField, a TField jest w KAŻDYM
datasecie i to, że akurat tu jest TADQuery nie ma żadnego znaczenia.
[ciach]
> ****************
> sorry Winnetou ale taka kostrukcja zdania oznacza ze nie trzeba laczyc
> UpdateSQL z Query
Tamta dyskusja dotyczyła AnyDAC->ODBC->Firebird i stąd moje sugestie
"kiepski sterownik ODBC".
Teraz piszesz o MS SQL 2005, a tu na pewno działa OK.
Taka konstrukcja zdania, oznacza że UpdateSQL jest niepotrzebny, a nie
że nie trzeba go łączyć a ma istnieć jego instancja - przynajmniej ja to
tak zrozumiałem.
--
wloochacz
Technical Details
Message-ID:
<f6did9$8i7$1@atlantis.news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mailReferences:
<f6aqh1$i7u$1@inews.gazeta.pl> <f6b5f1$k53$1@atlantis.news.tpi.pl> <f6b6nb$fv8$1@inews.gazeta.pl> <f6d3r6$c5u$1@atlantis.news.tpi.pl> <f6dc50$85p$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail From: wloochacz <wl@no.spam> Newsgroups: pl.comp.lang.delphi.bazy-danych Subject: Re: ADUpdateSQL , generowanie zapytan, po co wrzuca na koncu select Date: Tue, 03 Jul 2007 15:21:19 +0200 Organization: tp.internet - http://www.tpi.pl/ Lines: 75 Message-ID: <f6did9$8i7$1@atlantis.news.tpi.pl> References: <f6aqh1$i7u$1@inews.gazeta.pl> <f6b5f1$k53$1@atlantis.news.tpi.pl> <f6b6nb$fv8$1@inews.gazeta.pl> <f6d3r6$c5u$1@atlantis.news.tpi.pl> <f6dc50$85p$1@inews.gazeta.pl> NNTP-Posting-Host: plast-box.pl Mime-Version: 1.0 X-Trace: atlantis.news.tpi.pl 1183468777 8775 195.205.119.237 (3 Jul 2007 13:19:37 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Tue, 3 Jul 2007 13:19:37 +0000 (UTC) User-Agent: Thunderbird 1.5.0.12 (Windows/20070509) In-Reply-To: <f6dc50$85p$1@inews.gazeta.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit