ďťż

Ładny brzuch

zrobiłem tabele za pomocą database dectop tabela paradox
zapisałem ją w katalogu C:baza wraz z projektem delphi
i teraz mam następujący problem oczywiście lamerski :lol
jak w czytać tą tabele do grida za pomoca query1 z zakładki BDE

na początku robiłem to za pomocą session dbtable i do grida teraz chcial bym odbiec od table na rzecz query jak wczytać tą baze
proszę was o pomoc :cry:

pilne to jest muszę wstępną baze zrobić na z 2 tygodnie inacej papa:roll:

Ps. dalej sobie poradzę tak myśle tylko jak ją wczytać :cheesy:

Asdef www.kanalia.toya.net.pl
konkurs: FL_Studio jesteś kompozytorem amatorem? weź udział w konkursie więcej info pod adresem www.kanalia.toya.net.pl
szukam redaktorów kanalia@poprostu.net
zapraszam na http://www.kanalia.l...dfree.com/forum



1. wrzucasz na forme 3 komponenty:
TQuery
TDataSource
i TDBGrid

2. w DataSource1 ustawiasz DataSet na Query1

3. W DBGrid1 ustawiasz DataSource na DataSource1

4. W Query1 we wlasciwosc SQL piszesz nastepujace zapytanie:
select * from tabelka;
gdzie tabelka to nazwa tabeli paradoxa [nie podales nazwy wiec zamien na odpowiednia]

5. Zmieniasz wlasciwosc Activate [w Query1] na true i jesli wszystko zrobiles dobrze to w DBGrid1 powinny ci sie pojawic wszystkie rekordy z tabelki...

Jakies jeszcze pytania? ;) chetnie pomoge :]

pozdrawiam
pepsi^no1

cytat:pepsi napisał:
[...]

zrobiłem tak jak mówisz lecz chyba coś źle
http://www.kanalia.t...pl/kkk/baza.bmp sorki za kolory

Asdef www.kanalia.toya.net.pl
konkurs: FL_Studio jesteś kompozytorem amatorem? weź udział w konkursie więcej info pod adresem www.kanalia.toya.net.pl
szukam redaktorów kanalia@poprostu.net
zapraszam na http://www.kanalia.l...dfree.com/forum

cytat:Asdef napisał:

zapomniałem dodać że to dziadostwo wychodzi kiedy próbuje zaznaczyć true ;)

Asdef www.kanalia.toya.net.pl
konkurs: FL_Studio jesteś kompozytorem amatorem? weź udział w konkursie więcej info pod adresem www.kanalia.toya.net.pl
szukam redaktorów kanalia@poprostu.net
zapraszam na http://www.kanalia.l...dfree.com/forum



blad, ktory jest na obrazku, pojawia sie gdy Query1 nie ma zadnego zapytania we wlasciwosci SQL. Na pewno wpisales tam zapytanie i kliknales ok? ;) bo wyglada tak jakbys wpisal w oknie edycyjnym zapytania, ale nie zatwierdzil i dalej Query1 nie ma nic we wlasciwosci SQL. [okno Form1.Query1.SQL nie powinno byc otwarte, kiedy zmieniasz Active na true]
zamiast baza.db moze pisac po prostu baza.

pozdrawiam
pepsi^no1

cytat:pepsi napisał:

blad, ktory jest na obrazku, pojawia sie gdy Query1 nie ma zadnego zapytania we wlasciwosci SQL. Na pewno wpisales tam zapytanie i kliknales ok? ;) bo wyglada tak jakbys wpisal w oknie edycyjnym zapytania, ale nie zatwierdzil i dalej Query1 nie ma nic we wlasciwosci SQL. [okno Form1.Query1.SQL nie powinno byc otwarte, kiedy zmieniasz Active na true]
zamiast baza.db moze pisac po prostu baza.

zdzieki właśnie do tego doszedłem w sobote lecz nie maiłem juz możliwości napisać bo stare posty nie były zmoderowane a nie będe pisał 4 postó pod rząd... na mailu miałes wyjaśnienia :lol:

Asdef www.kanalia.toya.net.pl
konkurs: FL_Studio jesteś kompozytorem amatorem? weź udział w konkursie więcej info pod adresem www.kanalia.toya.net.pl
szukam redaktorów kanalia@poprostu.net
zapraszam na http://www.kanalia.l...dfree.com/forum

wałśnie jestem na etapie studiowania oraz googlowania na temat baz danych... więc mam kilka dodatkowych pytań
1.wyczytałem że query nadaję się tylko do odczytu czy mam rozumieć przez to query nie mam prawa edytować i dodawać rekordów? jeśli jest to jak
2.czy do tego celu muszę użyć table?
3. czy lepiej użyć do szukania i do edycji 2ch osobnych componentów query i Table ?

Asdef www.kanalia.toya.net.pl
konkurs: FL_Studio jesteś kompozytorem amatorem? weź udział w konkursie więcej info pod adresem www.kanalia.toya.net.pl
szukam redaktorów kanalia@poprostu.net
zapraszam na http://www.kanalia.l...dfree.com/forum

generalnie TQuery sluzy do wyciagania danych z tabeli bazy danych. ale rowniez nadaje sie do szukania, bo jesli zrobisz takie zapytanie:
select * from tabelka where nazwisko like 'Z%';
to wyszukasz wszystkie osoby na litere Z. wiec szukanie jak najbardziej.
Dodawanie, edycje i usuwanie danych rowniez mozesz zrobic w tym komponencie za pomoca zapytania:
insert into tableka (id,imie,nazwisko) values (:id,:imie,:nazwisko);
przed wykonaniem takiego zapytania musisz wprowadzic niezbedne parametry:
Query->ParamByName("id")->Value = Edit1->Text.ToInt();
Query->ParamByName("imie")->Value = Edit2->Text;
Query->ParamByName("nazwisko")->Value = Edit3->Text;
Query->ExecSQL();

mozesz rowniez uzyc komponentu TUpdateSQL. grupuje on zapytania zmieniajace zawartosc tabelki. normalnie musialbys uzyc trzech TQuery zeby zrobic dodawanie, zmiane i usuwanie danych, a tu masz jeden komponent, w ktorym wpiszesz odpowiednia skladnie sql.

pozdrawiam
pepsi^no1

zrobiłem tak:
select * from baza; Query->ParamByName("Imie")->Value = Edit1->Text.ToInt(); Query->ParamByName("Nazwisko")->Value = Edit2->Text; Query->ParamByName("Mail")->Value = Edit3->Text; Query->ParamByName("Telefon")->Value = Edit4->Text; Query->ExecSQL(); insert into baza (Imie,Nazwisko,Mail,Telefon) values (:Imie,:Nazwisko,:Mail,:Telefon);
a zgłasza komunikat
--------------------------------------- |Invalid use of keyword.                | |Token: Query->ParmByName("Imie")->Value| |Line Number:2                          | ---------------------------------------
oczywiście to co mi podałeś dałem w Query1 (SQL) chyba coś pomyliłem tylko co?

Asdef www.kanalia.toya.net.pl
konkurs: FL_Studio jesteś kompozytorem amatorem? weź udział w konkursie więcej info pod adresem www.kanalia.toya.net.pl
szukam redaktorów kanalia@poprostu.net
zapraszam na http://www.kanalia.l...dfree.com/forum

czy ja mysle, ze zrobiles to co mysle? :P ;)
dzizz...
jesli chcesz uzyc komponentu TQuery do dodania czegos do bazy to:
w TQuery we wlasciwosci SQL wpisujesz:
insert into baza (Imie,Nazwisko,Mail,Telefon) values (:Imie,:Nazwisko,:Mail,:Telefon);
i tylko ta linie :]

a pod przycisk "Dodaj" podpinasz kod:
Query->ParamByName("Imie")->Value = Edit1->Text;
Query->ParamByName("Nazwisko")->Value = Edit2->Text;
Query->ParamByName("Mail")->Value = Edit3->Text;
Query->ParamByName("Telefon")->Value = Edit4->Text;
Query->ExecSQL();

i po kliknieciu doda ci z pol Edit1, Edit2, Edit3 i Edit4 dane do tableki baza.
nie wiem w czym piszesz, kod podalem dla bcb, dla delphi bedzie podobny.
Ewentualnie dla niektorych parametrow trzeba bedzie dokonac konwersji ze Stringa na inta na przyklad, jezeli w tabelce dane pole ma wartosc liczbowa...

pozdrawiam
pepsi^no1

na razie to ja nie wiem co robie źle ale kupiłem sobie książke delphi 4 dla każdego przestudjuje ja i może sobie poradze ;)

Asdef www.kanalia.toya.net.pl
konkurs: FL_Studio jesteś kompozytorem amatorem? weź udział w konkursie więcej info pod adresem www.kanalia.toya.net.pl
szukam redaktorów kanalia@poprostu.net
zapraszam na http://www.kanalia.l...dfree.com/forum

cytat:Asdef napisał:

na razie to ja nie wiem co robie źle ale kupiłem sobie książke delphi 4 dla każdego przestudjuje ja i może sobie poradze ;)
To robisz źle, że zapytanie SQL wpisujesz do kodu programu zamiast do właściwości SQL w Query - o tym pisał Ci wyżej pepsi.

A co do książki - to zawsze może się przydać :)

ICQ : 245-363-570 | TLEN : oxisoft | GG : 486-2-486

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •