• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Baza danych czat

0 głosów
66 wizyt
pytanie zadane 14 sierpnia w SQL, bazy danych przez poldeeek Obywatel (1,030 p.)
edycja 14 sierpnia przez poldeeek

Witam, chciałbym stworzyć bazę danych pod aplikację multi czatu, w której będzie można stworzyć konwersacje z wybranymi użytkownikami działające równolegle do głównego czatu. Póki co rozrysowałem sobie coś takiego

Jestem tylko ciekaw czy aplikacja pod taką bazę ma prawo wypalić i proszę o jakieś praktyczne porady :D

(Id użytkownika w wiadomości również powinna być kluczem głównym i obcym)

1 odpowiedź

0 głosów
odpowiedź 14 sierpnia przez DragonCoder Pasjonat (21,250 p.)

multi czatu, w której będzie można stworzyć konwersacje z wybranymi użytkownikami działające równolegle do głównego czatu.

Gadu Gadu, discord, messanger, whatsapp, irc?

2. Rozmowa jest jedna tabela, ktora nie przetrzymuje zadnych informacji, wiec po co ona jest? W rozmowie powinny byc, wedlug mnie, oba id (nadawcy i odbiorcy), no bo rozmowa jest miedzy osob x i y.

3. id_usera, pomimo tego, ze nie ma takiego pola w tbeli uzytkownik

 

komentarz 14 sierpnia przez poldeeek Obywatel (1,030 p.)
Wstępnie chciałem napisać właśnie gadu gadu ale trochę uprościłem sobie zadanie, ponieważ to będzie moja pierwsza aplikacja korzystająca z wątków i połączenia sieciowego.

2. Chciałem aby możliwe były rozmowy grupowe dlatego nie dałem tam nic poza id rozmowy. Wcześniej robiłem projekt bazy w datamodeler to tam przy relacji wiele do wielu tworzyła mi się oddzielna tabelka pomocnicza do tej relacji i tutaj miałem nadzieję, że zrobi się tak samo i będzie mi ona przechowywała kilku użytkowników dla jednej rozmowy w przypadku właśnie rozmowy grupowe.

3. id_usera zastąpie nickiem.

I jeszcze pytanko dodatkowe mam, czy jest sens dawać klucz główny w użytkowniku do nicku i emaila, jeśli chcę aby oba były unikatowe ? Czy lepiej jest nie komplikować niepotrzebnie i wystarczające będzie jeśli w kodzie programu zatroszczę się o to aby przy rejestracji nie można było podać e-maila, który jest już zajęty ?
komentarz 14 sierpnia przez DragonCoder Pasjonat (21,250 p.)
1. Gadu gadu ma chyba open sources protokol, wiec warto go sprawdzić

2. Mozesz zrobic tabele grupa, do ktorej dodajesz x uzytkownikow, wtedy łatwiej jest, moim zdaniem, oddzielic grupy od pojedynczych rozmow

3. No to w schemacie bazy musi to byc jasno okreslone, bo inaczej jest to bledem modelu

4. Mozesz, ale i tak czekac Cie zapytanie do bazy, zeby sprawdzic czy dany użytkownik nie podał zajetego nicku, czy maila
komentarz 6 dni temu przez poldeeek Obywatel (1,030 p.)
edycja 5 dni temu przez poldeeek
Chyba spróbuje potraktować rozmowy między 2 osobami po prostu jako grupy 2 osobowe...
komentarz 3 dni temu przez DanJ93 Użytkownik (740 p.)

Chyba spróbuje potraktować rozmowy między 2 osobami po prostu jako grupy 2 osobowe...

Będzie to dobrym rozwiązaniem jeśli do już istniejącej rozmowy dwóch osób będzie można dodać kolejne.

Co do zastąpienia ID przez NICK to sprawdzi się to wtedy, gdy użytkownik NIE ma możliwości zmiany nicku, inaczej lepiej przypisać każdemu ID

Podobne pytania

0 głosów
1 odpowiedź 130 wizyt
pytanie zadane 25 lipca w Nasze projekty przez Krst0 Obywatel (1,080 p.)
0 głosów
0 odpowiedzi 26 wizyt
+1 głos
0 odpowiedzi 315 wizyt
pytanie zadane 21 listopada 2016 w Systemy operacyjne, programy przez Paweł Celuch Początkujący (420 p.)
Porady nie od parady
Odznacz odpowiedź zieloną fajką, jeśli uważasz, że jest ona najlepsza ze wszystkich i umożliwiła ci rozwiązanie problemu.Najlepsza odpowiedź

65,727 zapytań

112,370 odpowiedzi

237,231 komentarzy

46,688 pasjonatów

Przeglądających: 208
Pasjonatów: 4 Gości: 204

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...