Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Qt] QTableView - relacyjny widok z bazy danych
winuser
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 22.10.2010

Ostrzeżenie: (0%)
-----


Witajcie

Aktualnie piszę aplikację bazodanową co prawda nie w PHP, a w C++ z użyciem bibliotek Qt, baza danych to MySQL więc chyba dział dobry. I mam pewien problem nad którym się głowię. Mianowicie posiadam 2 tabele, jedna w której przechowywane są osoby w formie (dajmy na to lista klientów) :

  1. int user_id
  2. VARCHAR(40) name


natomiast druga tabela (dajmy na to do przechowywania listy zakupów):

  1. int user_id
  2. int product_id


Tabele z listą zakupów wyświetlam w widżecie QTableView, po wcześniejszym powiązaniu jej z QSqlTableModel. Chciałbym aby zamiast liczb w tabeli z listą zakupów (pole user_id) było wyświetlane automatycznie pole "name" z tabeli klientów. Niestety typy pól są inne (int vs varchar) i nie mam pomysłu jak coś takiego zrobić. Pomożecie ? (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




To co napisałem w sprawie bazy to była tylko sugestia. Niestety, ale obecność bibliotek Qt do obsługi różnych baz w przypadku braku postawionego na kompie serwera tejże bazki jest tak samo sensowna jak próba gaszenia pożaru bez posiadania czegokolwiek do tego celu (IMG:style_emoticons/default/wink.gif) Ma ona sens tylko w wypadku gdy faktycznie całość będzie nieprzenośna. IMHO uważam, że takie podejście to bardzo poważne ograniczenie.
Co do samego tematu...
  1. SELECT l.*, u.name FROM lista AS l LEFT JOIN users AS u ON l.user_id = u.user_id
YaQuzi dał wynik, ale jego wydajność jest delikatnie mówiąc nieco dyskusyjna. Dobrze chociaż, że zauważył, iż JOIN można użyć.
Go to the top of the page
+Quote Post

Posty w temacie


Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 15:07