From: Morff <morff1 wp.pl>
Subject: Re: Zdalne laczenie z baza Oracle
Dnia 17-05-2007 o 15:20:08 czarny <mystique free.art.lp> napisał:
> Witam.
>
> W archwium grupy znalazlem posty o komponentach polecanych
> do laczenia sie z Oracle.
> Wszystkie byly platne niestety. Czy istnieje w ogole
> darmowy komponet do laczenia sie z baza Oracle?
>
> Problem jest tym bardziej skomplikowany, ze musze sie laczyc z
> Oracle zdalnie, obecnie uzywam do tego programu "putty". Nie wiem jednak
> jak zrobić aby z programu do obsługi bazy, ktory mam zamiat stworzyc,
> laczyc sie zdalnie z baza Oracla.
> Prosze o jakies sugestie.
Po pierwsze musisz miec klienta oracle'a na maszynie ...
jak juz masz , to bez problemu przez ADO (DBGO czy jak to jeszcze sie tam
nazywa , trzeba o tym wspomnieć bo mozna coś zrobić w Turbo Delphi
Explorerze)
no ale NCOCI i AnyDac wymiatają ..
niestety płatne są natywne komponenty ODAC z CoreLab , ale za to potrafią
sie laczyć z serverem po IP bez instalacji klienta.
--
Pozdrawiam
Morff
--------------------
AQQ 141151
From: wloochacz <wl no.spam>
Subject: Re: Bookmark i jego zwalnianie
[ciach]
> Dzieki za odpowiedz. Teraz jednak mam inny problem z Bookmarkami.
>
> Zalozmy taka sytuacje:
> Mamy dwie tabele "dokumenty" i "magazyn".
> Po dodaniu lub edycji dokumentu program dokonuje aktualizacji tabeli
> "magazyn" oraz odswieza jej widok w DBGridzie.
> W magazynie jest dosyc sporo pozycji wiec wszystkie nie mieszcza sie w
> widoku DBGrida. Jak wiadomo TIBDataset przy wykonaniu Close;Open;
> pobiera tylko tyle wierszy ile jest potrzebne do wyswietlenia w
> DBGridzie. A zatem,
> jezeli ktos mial zaznaczony wiersz 50, a po Close;Open; jest on
> niewidoczny to BookmarkValid zwraca mi wartosc false; ale gdy zrobie
> FetchAll to wszystko jest ok i normalnie przechodzi do wybranego
> wiersza. Wydaje mi sie ze uzywanie FetchAll tylko do ustawienia pozycji
> to wielka porazka.
> Czy tak to ma dzialac? Bo jesli tak, to po co mi takie bookmarki? :)
Tak ma działać, bo bookmarki działają tylko na tym co jest w DataSecie.
Jeżeli czegoś nie ma, to bookmark is not valid.
W takim przypadku lepiej wykonać Locate, ponieważ Locate pobierze dane
aż natrafi na rekord który spełnia warunki (no chyba że to działa
inaczej w IBX, a tego to po prostu nie wiem).
Lepszym pomysłem jest RefreshRecord, czyli odświeżenie tylko jednego
rekordu w DataSecie, to powinno zadziałać w IBX (w końcu jest RefreshSQL).
Nie jestem specem od IBX, ale w TIBCustomDataSet.InternalPostRecord jest
takie coś:
if (FForcedRefresh or FNeedsRefresh) and CanRefresh then
InternalRefreshRow;
Może wystarczy ustawić odpowiednio parametry? ;-)
--
wloochacz
From: Krzysztof Raczkowski <raczkowk_pulapka poczta.wp.pl>
Subject: Re: Co jest z tym nie tak =?ISO-8859-2?Q?pom=F3=BFcie_bo_mi_?=
J-23 pisze:
> Jarosław Zielewski napisał(a):
>> "Miszczu" ;)...........napisałem Ci na e-mail jak to zrobić, podałem
>> Ci przykładowy kod. A Ty dalej kombinujesz jak koń pod góre ;):)
>> Po co się pytasz jak i tak robisz po swojemu ??
>> Szoda naszego czasu na odpisywani :(
>> powodzenia
>>
> Witam,
> Wiem że pan mi napisał na maila przykładowy kod za co jestem bardzo
> wdzięczny za poświęcony mi czas. Jedna wydaje mi się on nie właściwy
> gdyż wykorzystał Pan pole ID które jest automatycznie numerowane więc
> jak to ma działać przecież dzieci są zawsze numerowane od początku.
> (Chyba że żle zrozumiałem Pański kod)
Nie widziałem kodu .. ale widzę, że chcesz powiązać Id w jakiś sposób z
pozycją w drzewie. ParentId -> Id to tylko relacja, która nam mówi kto
jest czyim dzieckiem.
Ja np. nie stosuję w bazie czegoś takiego jak level (rozumiem że to jest
u Ciebie zagnieżdżenie/poziom w drzewie). Moim zdaniem to komplikuje
czasem sprawę. Zauważ że jak będziesz chciał przenieść jeden fragment
drzewa w inne miejsce nie na tym samym poziomie, to będzie trzeba
przenumerować dzieci ...
Poza tym, z Twojego kodu wynika, że starasz się chyba za każdym razem
ładować całe drzewko. Kod się upraszcza gdy kolejne dzieci ładujesz
podczas rozwijania gałęzi - a nie od razu całość. Nie mówiąc już że
działa to znacznie szybciej przy dużych drzewkach.
--
Pozdrowienia
K. Raczkowski
From: "Wojtek I." <wotu123 tlen.pl.CAT.TO>
Subject: Re: query
> Wojtek I. pisze:
> > mam zapytanie z parametrem:
> > np.
> > select imie, nazwisko, ulica
> > from czlowiek
> > where ulica in ( :r1 )
> >
> > Czy mozna robic tak zapytania i jezeli tak jak wpisac wartosc paramteru
> > r1
> > zeby mozna bylo wyswietlic ludzi z ulic np. kwiatowa, debowa
> >
>
> ja to bym raczej zrobił klasyczne zapytanie:
>
> select imie, nazwisko, ulica
> from czlowiek
> where ulica like :r1;
>
> Wtedy jako parametr podajesz tak:
>
> DM.DataSet.Paramteres.ParamByName('r1').Value := ciag_znakow + '%';
>
> lub DM.DataSet.Paramteres.ParamByName('r1').Value := '%' + ciag_znakow +
> '%';
>
> w zależności od tego jak chcesz szukać.
>
> Druga wersja zapytania klasycznego:
>
> select imie, nazwisko, ulica
> from czlowiek
> where ulica = :r1;
>
> W tym przypadku parametr podajesz tak:
>
> DM.DataSet.Paramteres.ParamByName('r1').Value := ciag_znakow;
>
> DM - DataModule
>
Hmm, ale to jest rozwiazanie na 2 zapytania a chodzi mi o takie zapytanie
(jedno zapytanie) za pomoca jednego parametru w którym wyswietlił
mieszkańców kwaitowej i debowej razem . Normalnie zapytanie to wyglądałoby
tak
select imie, nazwisko, ulica
from czlowiek
where ulica in ('Kwiatowa','Debowa')
jakbym chciał wiecej ulic to tak
select imie, nazwisko, ulica
from czlowiek
where ulica in ('Kwiatowa','Debowa', 'ulica1','ulica2',) itd.
I chodzi mi o skonstruowanie takiego zapytania z parametrem, i czy wogole
się da cos takiego zrobic ??
From: wloochacz <wl no.spam>
Subject: Re: JPG w polu BLOB i =?ISO-8859-2?Q?wy=B6wietlenie_go_w_T?=
> wloochacz pisze:
>> TBlobField(DataSet.FieldByName('pole')).LoadFromStream....
>
> No akurat dla nie ta metoda nieprzydatna. Korzystam z ADOCommand i
> zapytanie z parametrami.
Poczytaj manual, a potem wypowiadaj sie na grupie.
ADOCommand.Parameters.ParamByName('parametr').LoadFromStream(Stream,
ftGraphic);
--
wloochacz
From: "Piotrek" <piter.17 wp.pl>
Subject: Re: czy dobrze rozumiem ideę aplikacji bazodanowych?
> twoim zadaniem jest dobrze zaprojektowac taką aplikację , np stosując
> zapytania z parametrami zeby oracle trzymał sparsowane zapytanie w SGA.
powiem szczerze, że nie wiem co to "sparsowane zapytanie w SGA" i o jakie
parametry chodzi, ale wiem przynajmniej o co pytać google - dzięki
------
>> dodatkowe pytanie:
>> czy w jakikolwiek sposób mo?na uszkodzia baze danych je?li u?ytkownik
>> jest w
>> trybie zapytania?
>
> mozna ... użytkownik wysyła zapytanie a w tym samym czasie ktoś wali w
> serwer mlotkiem.
nie doprecyzowałeś jakim młotkiem, czy chodzi o pneunomat, czy zwykły, a to
chyba ważne, poza tym nie wiem czy ten ktoś wali młotem w realu czy w
niezakończonej transakcji, bo w drugim przypadku czytałem coś o rollback,
czy cuś w tym stylu.
jeszcze raz dzięki.
pozdr
P.
From: szaman <t.cwajda hors-pro.com>
Subject: Re: Przeszukiwanie Grida
Michał Strecker pisze:
> szaman napisał(a):
>
>> Gadasz tak jak by Ci w ogóle relacyjna baza dancych nie była potrzebna
>> tylko jeden plik tekstowy.
>> Zastanów się czy potrzebujesz strukturę danych w postaci relacyjnej
>> czy plaskatej. Jeżeli dla Ciebie to utrudnienie , że tabela ma kolumny
>> to albo masz totalne braki w edukacji albo nie potrzebujesz bazy danych.
>> Relacyjność powinna być ułatwieniem a nie utrudnieniem!
>
>
> Jaka baze potrzebuje to wiem, juz ja przemyslalem i napisalem w sql'u,
> oddawalem ja jako projekt na zaliczenie egzaminu i zdalem wiec chyba
> jakichs mega brakow to nie mam. W ogole z czego wnioskujesz ze nie jest
> mi potrzebna relacyjna baza danych?
Nie miałem zamiaru Ciebie obrażać - wyciągam po prostu wnioski z tego co
piszesz. A piszesz, że chcesz szukać czegoś (pewnie jakiejś sekwencji
znaków) i nie ma dla Ciebie znaczenia w tym momencie struktura bazy
ponieważ chcesz szukać po wszystkich kolumnach. Jak dla mnie to czysta
deklaracja, że struktura podziału na kolumny jest Ci zbędna a wręcz
przeszkadza bo masz kłopot z realizacją zadania.
Jak dla mnie to stwierdzenie, że robisz to wszystko na jakieś zajęcia w
jakiejś szkole.
Ja założyłem, że masz zrobić coś poważnego z tymi danymi albo
zaimplementować jakąś poważną funkcjonalność w jakiejś aplikacji a tu po
prostu zalka z czegoś tam. To naprawdę wszystko tłumaczy :-)
Na takie zalki robi się przeważnie nielogiczne i bezsensowne zadania - z
czego się bierze ta prawidłowść to teraz nie chcę poruszać.
> Wyglada na to ze dla Ciebie
> relacyjnosc jest synonimem posiadania kolumn, a jesli tak jest to Ty
> masz braki w edukacji.
No może mam - cały czas się uczę i nim więcej tym bardziej widzę jak
jeszcze dużo muszę jeszcze poznać.
Baardzo źle robisz, że wytykasz komuś braki w wykształceniu mając w
sumie własne bardzo niewielkie.
Ten niby brak w moim o którym mówisz jest tak naprawdę brakiem w
wykształceniu wielu wielu "informatykó" i to z tytułami doktorów a nawet
profesorów i to nie tylko polskich - wręcz sie zacietrzewiają i nie chcą
nawet przez chwilkę pomyśleć. A Ty jak widzę jesteś ich ofiarą :-)
Na Twoje usprawiedliwienie przyznam, że we wstępach do większości
książek tak właśnie jak Ty to pojmujesz piszą a właściwie sugerują co to
takiego relacyjna baza danych.
Ale sam pomyśl co to jest relacja i co to są dane.
Bo jak dla mnie relacyjna baza danych to zbiór danych pomiędzy którymi
zachodzą relacje i na której można wykonywać operacje z wykorzystaniem
tych relacji. Przypomnę Ci wyedukowany pytaczu :-), że relacją jest ...
no co ... ??? tak właśnie bardzo możliwe że jusz się domyślasz - mówiąc
kolokwialnie (do niektórych inaczej się nie da) właśnie powiązanie
danych w struktururę jaką jest tabela. Tabela to przecież efekt relacji
np imion z nazwiskami, peselami, itp. itd...
a potem robisz jakieś normalizacje a potem znowu denormalizacje :-)
Wniosek: pojedyńcza tabela (ale zawierająca kilka kolumn) to już
relacyjna baza danych!!!!!
>Jak juz to mam problemy z implementacja tego w
> delphi, w tej kwestii mam braki, to fakt, ale pewnie kazdy mial jak
> zaczynal. Chce tylko zeby obsluga byla wygodna dla uzytkownika, czyli
> zeby wpisal fraze i program zaznaczyl rekord ktory ja zawiera, bez
> klikania w grid i wpisywania w jakiej kolumnie ma szukac, a nie chce mi
> sie dla kazdej tabeli ustawiac w jakich kolumnach ma szukac bo to jest
> bez sensu pracochlonne i na pewno mozna zrobic to prosciej.
No widzisz trzeba było tak od razu - ale to nie znaczy że pochwlam taka
funkcjonalność. Podejrzewam, że nie zetknąłeś sie jeszcze w życiu z
bazami które nie zmieściły by sie do excelka i żyjesz w złudzeniu jakie
daje googl'e które wyszukuje strony z np. literą "a" w 0.13 sek.
Poniżej oryginalny komunikat
"Wyniki 1 - 10 spośród około 13,450,000,000 dla zapytania a. (Znaleziono
w 0,13 sek.) "
Spróbuj kiedyś dodać do jakiejś Twojej nie bazy tyle rekordów a potem
wyszukaj (może ogranicz sie do jedenj kolumny :-)) cokolwiek.
Podejrzewam, że zanim Twój algorytm znajdzie wynik i go wyświetli w
ukochanym dbGrid to w międzyczasie ożenisz się i żonie skończy się urlop
macieżyński a po drodze kilkukrotnie będziesz musiał upgrade'ować
komupter ;-)
>Lepiej
> jakbys mi powiedzial czemu nie dziala ten kod ktory umiescilem, i jak go
> poprawic, jak bardzo chcesz to moze byc na dataset a nie na gridzie, mi
> to obojetnie byle dzialalo.
Okropne to co piszesz "byle działało".
Co do odpowiedzi to możesz wykorzystać to że pola w datacecie to
kolekcja i po kolei szukać (piękne rozwiązanie co - otóż nie to
najgorsze co może być - ale BĘDZIE DZIAŁAŁO).
Lepiej już skonstruować zapytanie SQL, które szuka po wszystkich polach
ale to też nonsens.
Czego Was tam uczą ?!
Ja rozumiem, że można szukać konkretnego imienia w polu imie i w polu
drugie_imie albo nazwy w polu nazwisko oraz w polu nazwa_firmy jeżeli
już ktoś ma taką strukture bazy ale np szukać e-mail w nazwie albo pesel
w datach zakupu towaru?!
Weź Ty się zastanów czy naprawdę potrzebujesz tabelę skoro chcesz szukać
jak edytorze tekstów. Oczywiście jak Pan Nauczyciel kazał to musisz zrobić.
Co to kolekcje o których wspomniałem to oczywiście wiesz ?!
Szczegółów Ci nie będę pisał bo po pierwsze to nie dydaktyczne :-) a po
drugie nie dotykałem delphi chyba ze dwa lata.
From: "Piotr" <resident poczta.onet.pl>
Subject: kodowanie ???
Witam
Mam następujący problem.
Otórz mam pole w którym są wpisywane nazwy czasami cyrylicą a czasami
polskimi znakami z ogonkami.
Gdy wyciągam te dane do grida lub dblookcomboboxa to widzę krzaczki zamiast
cyrylicy lub zamiast polskich znaków zależnie od tego jakie kodowanie
ustawię na ten komponent.
Czy jest jakaś możliwość, żeby widzieć prawidłowo wszystkie litery?
Czy można ustawić wspólne, uniwersalne kodowanie?
Będę wdzięczny za wszelkie podpowiedzi.
Pozdrawiam
From: J-23 <Baczeklu poczta.fm>
Subject: Re: Ile wierszy w DbGrid?
lukakrys pisze:
> Witam !
>
> Jak znależć ilość wierszy wyświetlanych przez dbgrid ?
>
DataSet + F1
From: "delphi" <remmi poczta.onet.pl>
Subject: Re: D6 ADOquery left join
Użytkownik "Morff" <morff1 wp.pl> napisał w wiadomości
news:op.tziyis2lq0kutt xp_januszk.wag54gs...
> Dnia 01-10-2007 o 16:19:53 delphi <remmi poczta.onet.pl> napisał:
>
>> Witam
>> Jak w temacie : mam D6 , odbc do postgresa, k3ade adoquery , u?ywam
>> konstrukcji sql z "left join" i mam komunikat :
>> 'Us3uga dostarczania danych lub inna us3uga zwróci3y stan E_FAIL'
>> Dodam, ?e ze zwyk3ym joinem dzia3a , ale oczywi?cie nie daje oczekiwanego
>> wyniku jak z "left join".
>> Czy ma kto? pomys3 od czego zacz?a aby wyeliminowaa ten b3?d?
>> Z góry dzieki za sugestie.
>
> najpierw sprawdziłbym czy składoniowo zapytanie jest ok. Jezeli nawet
> jestes pewien na 100% to wklej to zapytanie do innego narzedzia które
> łączy sie z twoją bazą i psrawdź czy czasami nie pokazuje sie jakiś bład
> skladniowy.
>
>
>
> --
> Pozdrawiam
> Morff
> --------------------
> AQQ : 141151 (morff aqq.eu)
Sprawdzałem pgadminem i jest OK
pzdr
ako
From: Sowiecki Agent <przemyslaw.rokicki.tnij tnijtnijkochanietnij.gazeta.pl>
Subject: Re: AnyDAc, czesc dalsza pyskowki
no i problem jest rozwiązany. Jeżeli LockMode jest ustawiony na
ImPessimistic wowczas transakcja nie jest zatwierdzana po poscie i musze
to manulanie zrobic by zapisac trwale rekord, w przypadku Lock mode
ustawionych na ImRelly, tak nie jest.
Nie wiem czy tak ma byc czy to blad, poprzednio tak nie bylo, w kazdym
razie zamiast mnie obrazac (nie zamierzam sie zajmowac hodowla ogorkow)
mozna sie bylo doradzic to co D. z forum AnyDAca.
P.
--
>> http://wynagrodzenie.info <<
darmowe 'porady prawne' wolontariuszy w zakresie rozliczeń pracowników i
pracodawców, prowadzenia księgi oraz ewidencji, rozliczeń z fiskusem
oraz ZUSem.
From: Buster <radob w1pos.p.lodz.pl>
Subject: DBGrid i =?ISO-8859-2?Q?za=B3amanie_linii?=
Witam.
czy można w DBGridzie wykona taki efekt, że jak linia napis w komórce
przekracza szerokośc komórki, to zostanie złamany??
--
Pozdrowienia
Radek Dobrowolski vel Buster
GG: 1670266
Odpowiadajac na priv, zamien 1 na i w adresie e-mail
From: "Marek H." <hm-soft wp.pl>
Subject: Re: FireBird + =?ISO-8859-2?Q?powr=F3t_karetki=2E?=
> zmienna_tekstowa='Ala ma kota'||#13||'a kot ma Ale';
Tak też nie działa. Ale już sobie napisałem UDF-a.
Pozdrawiam
MH
From: "neuron" <neuron neuron.com.pl>
Subject: Re: FB - polaczenie po IP czy po nazwie kompa?
> Korzystanie z IP wydaje mi się "pewniejsze", ale to chyba tylko moje
> przesądy.
> Czy mogą wystąpić jakieś problemy jeśli w ścieżce do bazy będę wpisywał
> nazwę
> komputera zamiast jego IPka? Nie wiem czy możliwa jest taka sytuacja, że
> komputer jest w stanie połączyć się po ipku ale nie może po nazwie (nie
> jest w
> stanie dowiedzieć się jaki adres ma serwer o danej nazwie).
>
> Jeśli serwerem jest zwykły komp w małej sieci, w której wszystkie kompy
> dostają IP z DHCP to chyba nie ma innego wyjścia jak łączyć się po
> nazwie -
> prawda?
>
Mialem kiedys problem ze skonfigurowaniem systemu po nazwie. W firmie
dzialaly jakby dwie sieci na produkcji i burowa polaczone
(nie mam doswiadczen administracyjnych wiec wyraze sie malo precyzyjnie)
"mostkiem" na novelu. Moj serwer byl w sieci produkcyjnej i do niego moglem
sie polaczyc przez nazwe ale juz z segmentu biurowego ni czorta.
wojtek
From: "Skomoroch" <abuse microsoft.pl>
Subject: Re: DbGrid - numerowanie wierszy
Użytkownik "Rafal Kubiak" <niedam wam.adresu.pl> napisał w wiadomości
news:cwaejsc51ldg.1736i3qypdiri.dlg 40tude.net...
> Witam
> Czy jest jakiś prosty sposób na numerowanie wierszy dbgrida? Chodzi o taką
> zwykłą liczbę porządkową, która po prostu ponumeruje wiersze. Googlałem
> trochę, ale specjalnie nic nie ma. Da sie to zrobić?
>
> Pozdrawiam
mysle, ze nie ma. grid co najwyzej moze po napisaniu odp.funkcji ponumerowac
wiersze, ktore wyswietla, o pozostalych z dataseta po prostu nie ma pojecia.
From: Sowiecki Agent <przemyslaw.rokicki.tnij tnijtnijkochanietnij.gazeta.pl>
Subject: Re: [OT]Re: AnyDAc, czesc dalsza pyskowki
Przemyslaw Osmanski napisał(a):
> Sowiecki Agent pisze:
>> Nie wiem czy tak ma byc czy to blad, poprzednio tak nie bylo, w kazdym
>> razie zamiast mnie obrazac (nie zamierzam sie zajmowac hodowla ogorkow)
>> mozna sie bylo doradzic to co D. z forum AnyDAca.
>
> Z tego co wiem, wloochacz nie jest przedstawicielem DA-Soft w Polsce. My
> tutaj możemy pomóc w rozwiazaniu problemu, jesli mamy na to czas, jesli
> się z tym juz spotkaliśmy. Taka jest idea grup dyskusyjnych... Nikt za
> nikogo nie bedzie odwalał roboty, testowania czy prób.
> Pozatym _zawsze_ nalezy sprawdzic najpierw forum AnyDac'a, i ew. tam
> zadawac co trudniejsze pytania.
alez zgadza sie, tylko skoro ktos nie chce sprawdzic lub nie wie to
niech sie nie wywyzsza i w ogole nie odpowiada obrazajac przy tym
pytajacego. Ja zadalem jak widac bylo pytanie z podstaw, a to daltego ze
po wykonaniu prostych czynnosci nie dzialalo tak jak powinno, wiec
podawalem rozne kombinacje.
W. trzykrotnie mnie obrazil podczas jedenj dyskusji, W dwoch przypadkach
bezpodstawnie, teraz najwidoczniej znowu. A wszystko to od czasu gdy
jego urojony piekny swiat stworzony przez Propagandziste Zbigniewa
Ziobre zostal zaburzony przez art. do ktorego link podalem.
jak dla mnie eot.
P.
--
>> http://wynagrodzenie.info <<
darmowe 'porady prawne' wolontariuszy w zakresie rozliczeń pracowników i
pracodawców, prowadzenia księgi oraz ewidencji, rozliczeń z fiskusem
oraz ZUSem.