@Jurigag: Wszystko zalezy od specyfiki aplikacji i specyfiki danego zapytania :)

Czy chcesz rozlozyc obsiazenie na baze i aplikacje?

Czy masz duzo danych do przerzucenia pomiedzy baza a aplikacja?

Czy czas wykonania dwoch osobnych zapytan jest krotszy od laczonego zapytania?

Etc.

W zdecydowanej wiekszosci przypadkow (i jako zachowanie domyslne) rzeklbym zebys robil joiny. Do tego zeby zrobic dwa osobne zapytnia trzeba miec dobry powod.
#mysql #php #webdev #programowanie #pytanie

Tabele w relacji wiele do wielu. Jest to tylko przykład, podaję taki, bo łatwiej mi będzie zrozumieć. Kilka osób może mieć kilka przedmiotów- wiadomo. Pytanie brzmi, jak najefektywniej mam dokonywać selekcji danych w takich przypadkach i jak je obsłużyć do wyświetlania na stronie? Np. zbiór osób posiadających daną rzecz, czy zbiór rzeczy, które posiada dana osoba. Proszę o łatwe do zakumania wytłumaczenie :)

Osoba :

osobaid
Pewnie nie. Jeśli plik został zapisany w latin2 a chcesz go mieć w UTF8 to to nie wystarczy.

Jeśli baza nie jest duża i da sie ten plik otworzyć w notepad++ lub podobnym, najłatwiej otworzyć go w kodowaniu w jakim jest zapisany. Obok utworzyć pusty plik w kodowaniu docelowym i po prostu przekleić zawartość z jednego do drugiego.

Potem oczywiście zamienić wpisy w pliku określające kodowanie.

Poza tym, ważne jest tez ustawienie
#it #mysql #mysqlworkbench Zainstalowałem na świeżo system, dalej MySQL oraz MySQL Workbench. Nie mogę jednak połączyć się z serwerem. Wyskakuje błąd:

Cannot Connect to Database Server

Your connection attempt failed for user 'root' from your host to server at localhost:3306:


Invalid for this platform protocol requested(MYSQL
PROTOCOLSOCKET)

Please:

1 Check that mysql is running on server localhost

2 Check that mysql is running on port 3306 (note: 3306 is the default,
Mirki mam tabelę w bazie danych nazwijmy ją produkty.

int varchar

id nazwa

1 Kubki żółte emaliowane

2 Kubki żółte porcelonowe chińskie

I próbuję po niej przeszukać po nazwach czy mam już takie produkty.

Próbowałem normalnego SELECT * from produkty where nazwa = "Kubki żółte emaliowane"

oczywiście mysql zwraca 0 rows ;)

W phpmyadminie jak wyszukuję przez kreatora mam również 0 wynik.

Może mi ktoś powiedzieć jak wyszukiwać dokładnie po nazwach ??
Widzę, że niezbyt często trafiają się w tym tagu problemy z zapytaniem, więc żeby rozruszać szare komórki coś ode mnie:


Wyobraźmy sobie szkolną bazę danych. Mam tabelę z id, id klasy oraz osiągniętą średnią przez poszczególnych uczniów.

Nie wiem ile jest klas. Chcę wydobyć x najlepszych wyników dla każdej klasy osobno i z posortowaniem od najlepszego.

Ktoś ma pomysł jak to osiągnąć?

#mysql
#php #mysql #programowanie

Zastanawiam się jak najlepiej rozwiązać logowanie i sesje oraz ich zabezpieczenie. Na początku wykonałem to tak, że przy prawidłowym zalogowaniu, w zmiennej sesyjnej przechowywałem id użytkownika z bazy i wszelkie dalsze operacje bazodanowe wykonywałem na podstawie tego id. Jeśli ta zmienna jest pusta, nie ma dostępu do stron przeznaczonych dla zalogowanych. Później poczytałem więcej i wiem jaka to głupota i właśnie dlatego chcę to zrobić jakoś inaczej i od
czy jest sens próbować naprawić


A skąd mamy to wiedzieć? Naprawić się zawsze da a czy jest sens to sam musisz sobie na to odpowiedzieć :P Albo przepalasz czas na debugowanie, albo olewasz temat - Twoja decyzja :P

I tak jak napisał @msq - nie przeglądałem za bardzo, ale to raczej nie jest wina bazy (co łatwo sprawdzić po prostu na nią patrząc). Nie wiem jak jest napisane phpbb, ale jeśli doszli
Ma ktoś pomysł jak zapisać plik #xml do bazy #mysql? Potrzebuję zrobić storage takich plików na bazie, fajnie jakby dało się to jakoś zserializować i zapisać do bazy (coś jak #xpath) i ewentualnie wyszukać coś w takim pliku.

Ostatecznie mogę wrzucić XMLa do bloba ale to ostatecznie...

jakieś pomysły?

#php #programowanie
Jaki język skryptowy polecacie do przemielania ~1mln danych przy relacji do 4-5 tabel i wyplucia ich w postaci ładnego htmla/jsona do późniejszej obróbki? Strona webowa, php odpada (generuje się z 15-20sek), dane nie muszą być live, mogą być generowane co jakiś czas. Próbowałem perla/pythona i słabo to się mi widzi :c

#programowanie #mysql #php
@Kemsan: a co Ci w PHP nie pasuje? sprofilowałeś skrypt żeby sprawdzić co najwięcej czasu zajmuje i dlaczego?

Jeżeli I/O nie jest problemem czy dostępne zasoby to możesz się zainteresować PCNTL.
@aptitude: To, że coś działa wcale nie znaczy, że jest napisane dobrze. Szczególnie przy bazach danych gdzie optymalizacja jest bardzo ważna. Przy blogu który odwiedza 2 osoby / dzień nie ma różnicy, przy serwisie z wieloma danymi i użytkownikami liczonymi w tysiącach/dziesiątkach, setkach tysięcy jest już troszkę inaczej...

@doopchuck: kursów znajdziesz dużo, niestety teraz pod ręką nie mam żadnego gotowca, słowa kluczowe na które powinieneś imho zwrócić uwagę:

tworzenie baz,
@TiIa: język się zmienia, ludzie głosują klawiaturami i "witam" jest już standardem. Poczta elektroniczna to stosunkowo nowe medium i wykształciło nowe wzorce komunikacji. Rozpoczynanie email-a od "dzień dobry" ma jeszcze mniej sensu. "Witam" się przyjęło właśnie dlatego, że nie kojarzy się zbytnio ani z sytuacją formalną (jak "dzień dobry"), ani z nieformalną (jak "cześć") . Polacy potrzebowali takiego słowa i nadali nowe znaczenie "witam".

A teraz trolling językowy: językoznawcy mimo #
@kmlbnd: opanowanie podstaw, tak jak wyżej kolega powiedział, w parę dni. Zależy co rozumiesz pod pojęciem, średniozaawansowanym, jakieś skrypty, procedury, widoki może troszkę dłużej. w zależności od poziomu trudności i tego jaki zdolny jestes :)
@kmlbnd: Praktyka Panie jest najlepszym nauczycielem. Jak masz możliwość pozyskania danych, którymi operujesz w finansach z jakiejś bazy sql'owiej to odpal klienta, podłacz się do tej bazy i zacznij pisać selecty n tych danych tak, aby uzyskać wynik który uzyskujesz w excelu.

Ja tak zaczynałem.

Kiedyś wolałem pobrać wszystkie dane z bazy do excela (export do pliku xls), później w excelu obrobić. Dzisiaj posiadam swoją pseudo hurtownie danych której zadaje konkretne