Odczyt z bazy Danych MySQL (ZEOS)

0

Witam.
Mam pare pytań zwiazanych z programem, który ma współpracować z lokalna bazą danych MySQL.
Do obsługi MySQL'a wykorzystuję komponenty Zeosa. Dotychczas program oparty miałem na danych zapisanych w plikach INI.
Jednak chciałbym przejść na Bazy Danych, które mam nadzieje będą szybsze.

Załóżmy, że mam Bazę "Ksiegarnia"
Tam, tworzę tabelę: "Ksiozki"

Tabela wygląda tak:

Numer | Autor | Tytuł | Słowo Kluczowe 1 | Sł. Klucz 2 | Sł. Klucz 3
1 Autor 1 Tytul_1 Slowo_1 Slowo_2 Slowo_3
2 Autor 2 Tytul_2 Slowo_1 Slowo_2 Slowo_3
.. .. .. .. .. ..

Każdą książkę opisują numer w bazie, jej autor oraz do trzech słów kluczowych.

Autorzy zdefiniowani są w innej tabeli - "Autorzy"
Np:

Numer | Autor | Rok
1 Zdzich 2005

Słowa Kluczowe zdefiniowane są w kolejnej tabeli - "Slowa"
Np:

Numer | Slowo
1 Wojna
2 Milosc

Moje pytanie brzmi.

  1. Odczyt np. Numeru ksiozki oraz tytulu zrealizujemy tak:

SELECT Numer, Tytuł, Autor FROM Ksiozki
Otrzymuję

1 Tytul_1 1
2 tytul_2 2
itd...

Ale jak odczytać konkretnego autora? Bo jak wpisze w tym powyższym zapytaniu Autor,
to odczyta mi numer autora (pod którym znajduje sie on w Tabeli - "Autorzy")
Jak to odczytać bezpośrednio? jak to się fachowo robi, żeby to było błyskawiczne?

Chce uzyskać
1 Tytul_1 Zdzich
2 Tytul_2 Szymborska

Jesli ktos wie o co mi chodzi, to proszę o pomoc. Dobrzeby było, gdyby ktoś sprobował zapisac to w Delphi,
przy uzyciu Zeosa. Wczytać te dane do TListView chcę.

  1. Czego muszę w Delphi użyć, aby nie trzeba było korzystać z zewnętrznej bazy do obsługi SQL? Tak, aby cała obsługarealizowana była przez mój program. (zeby nie trzeba było niczego instalowac na innym komputerze. Tylko Porgram + pliki danych bazy)

Pozdrawiam
Ps: Tak, jestem w tej kwestii zielony. Prosze o pomoc.

0

Pepe chłopaku....
Na Forum jesteś od października 2002r i tylko dlatego po tobie nie pojadę....

No słuchaj poszukaj trochę.. - na pewno znajdziesz, pytania są dosyć banalne i trochę mają niewiele wspólnego z Delphi...
Co do SQL to tutaj masz podstawy: http://webcity.pl/webcity/kursy.php?k=mysql&d=5,5

a co do reszty to sam powinieneś wiedzieć gdzie szukać...

Jeżeli naprawdę nie wpadniesz na to sam... To ci pomogę ale napisz jakie masz klucze identyfikujące jednoznacznie Autora... czy jest to NR czy wszystkie pola... no i jak identyfikujesz słowa kluczowe...
Ogólna składnia klauzury SELECT jest taka:
SELECT nazwa_tabeli.nazwa_pola, kolejna_nazwa_tabeli.nazwa_pola FROM nazwatabeli1, nazwatabeli2... WHERE warunki_do_spełnienia AND dalsze_warunki..

0

irek chłopaku....

wiem, ale potrzebuje tylko podpowiedzi...
Dopiero poznaje skladnie sql. Z Delphi ma to tyle wspolnego, ze
aplikacja jest napisana w Delphi wlasnie i korzysta z Zeosa - interfejsu posredniczocego z baza mysql...
Pytania rzeczywiscie mogo byc banalne (nie dla mnie jednak).

Jednoznaczenie identyfikuje Autora po numerze, w tabeli "Autorzy".
Jak mamy np. 12 rekord tabeli autorzy to znaczy ze to jest 12 Autor i wlasnie 12 jest wpisane do Tabeli Ksiozki...
Hmm, pomozesz?
Pozdr

0

Skoro już musisz:
select * from autorzy - dla wyciągnięcia samych autorów
select * from autorzy,ksiązki where ksiazki.autor=autorzy.autor - jesli chcesz meić opisy autorów koło książek
Podstawa sql... ale w końcu pomagajmy innym

0
Andrzej Dąbrowski napisał(a)

Skoro już musisz:
select * from autorzy - dla wyciągnięcia samych autorów
select * from autorzy,ksiązki where ksiazki.autor=autorzy.autor - jesli chcesz meić opisy autorów koło książek
Podstawa sql... ale w końcu pomagajmy innym

Źle [!!!] Patrz na mój post wyżej i na składnię SQL (On ma to podzielone na 3 tabele więc trzeba je powiącać aby otrzymać interesujące nas wyniki)
Kluczem identyfikującym jest nr a nie autor.

Nie o to chodziło... A poza tym udzieliłem już chłopakowi odpowiedzi na gg

Do Moderatora: Post nadaje się do przesunięcia do kosza....

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