Mrki zaczynam uczyć się Django, zrobiłem tutorial z djangogirls, teraz zabieram się za tutorial ze strony django https://docs.djangoproject.com/en/1.8/intro/tutorial01/ jednak chciałbym zmienić domyślną baze danych SQLite na coś innego. Z tego co się orientuję (a jestem totalnie zielony) to najlepiej znać MySQL albo PostgreSQL. Decyduję się na PostgreSQL.
Zainstalowałem wg instrukcji na wiki postgresql https://wiki.postgresql.org/wiki/YUM_Installation dla Fedory 22. I co dalej? Wpisywać te wszystkie komendy w konsoli, którę są podane po zainstalowaniu postgresql-server?
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kujaw po dłuższym czasie przeniosłem się z sqlite na postgresql i powiem Ci, że a) to było banalne proste (tylko że robiłem to na windowsie, nie na linuxie), b) w samym projekcie poza settings.py nie musiałem nic zmieniać. a jak wiadomo mysql czy postgresql >>> sqlite ( ͡º ͜ʖ͡º)

I co dalej? Wpisywać te wszystkie komendy w konsoli, którę są podane po zainstalowaniu postgresql-server? I wtedy
  • Odpowiedz
@synec: GROUP BY nie wymaga wyliczenia tego w SELECT, a nawet jeśli to
SELECT id
FROM
(SELECT id, count(DISTINCT name)
FROM tbl
WHERE name
  • Odpowiedz
Hej Mirki. Wiecie jak w prosty sposób bez modyfikacji bazy danych ani konfiguracji serwera zrobić w MySQL 5.5 wyszukiwanie bez polskich znaków? W 5.6 można zrobić LIKE costam COLLATE utf8_unicode_520_ci ale w 5.5 utf8_unicode_520_ci jest niedostępne a z kolei utf8_unicode_ci nie radzi sobie z literką "Ł".

Istnieje jakiś hack na to?

#programowanie #bazydanych
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Pytanie będzie dotyczyło dwóch zapytań mających zwrócić teoretycznie ( ͡° ͜ʖ ͡°) taki sam wynik. Chodzi o to, które będzie bardziej wydajne, czyli które szybciej się wykona.

Załóżmy, że mamy zapytanie A, w skład którego wchodzi podzapytanie B oraz to zapytanie A czerpie jeszcze dane z jakiejś tabeli, nazwijmy ją C

Wersja 1:
Po klauzuli FROM zapytania głównego (A) wstawiamy podzapytanie B, które następnie łączymy JOINEM z tabelą C na podstawie jakiś identyfikator id
  • 20
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@TomaszWKS: Tak na szybko:
1) Po co ci DISTINCT jeśli masz GROUP BY?
2) Czy GROUP BY jest poprawny? Grupujesz tylko po jednej kolumnie a nie wiem jak sobie radzi Oracle z functional dependencies (jeśli działa to jest poprawny to nie MySQL)
3) Czy Oracle przekształca AND UPPER(p.polistatus) NOT IN 'Z' do p.polistatus NOT IN ('z','Z')?

Poza tym to wszystko zależy od wróżek i fazy księżyca ale generalnie
  • Odpowiedz
@plushy: Masz rację, pierwsze wykonuje się jako index only scan, drugie jako index scan.

nadal pozostaje kwestia dobrych praktyk

W tym całkowicie się zgadzam, jeśli nie potrzebujemy funkcjonalności pomijania NULLi to zawsze powinno się używać 1 lub * (zależnie co jest już używane w projekcie).
  • Odpowiedz
Witam mirków.
Mam pytanie odnośnie wydajności. Będę musiał zaimplementować wyświetlanie dużej ilości danych w XML. Miałem to zrobić w taki sposób, że w #postgresql utworzę nowy view, następnie w #php używając #yii będę generował #xml. Jednak teraz pomyślałem po co komplikować sprawę? Może lepszym rozwiązaniem będzie stworzenie funkcji w #bazydanych i wygenerowanie XML od razu w DB. Wtedy wystarczy tylko podać
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mariecziek: zależy co to za dane i jak bardzo będą się zmieniały, jak często będzie pobierane to samo, to lepiej wygenerować już jakiś xml z tymi danymi jako cache i serwować plik xml i tyle, a przy jakiejś zmianie tych danych wygenerować ten plik na nowo, albo po stronie klienta jak napisali wyżej a do przeglądarki przekazywać tylko jsona
  • Odpowiedz
Mirki mam tabelę A i tabelę B, interesuje mnie taki join, aby stworzyć tzw. master view i dopełnić go null'ami.

O co chodzi:

tabela A{linia,qty,data}{"l1,5,2015-09-21", "l3,2,2015-09-21"}
tabela B{linia}{l1,l2,l3,l4,l5,l6}
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Dobra jestem idiotą, nie rozumiem dlaczego uparłem się żeby selectować z A zamiast B. LEFT OUTER JOIN'a próbowałem ale chyba na odwrót... Dzięki! ;)
  • Odpowiedz
@w011: Prawie.
SELECT post_id FROM wp_postmeta A WHERE EXISTS (SELECT post_id FROM wp_postmeta B WHERE meta_key = 'cp_city' AND meta_value = 'Warszawa' AND A.id_posta = B.id_posta)
  • Odpowiedz
#programowanie #csharp #bazydanych

Mam pytanie dotyczące przechowywania danych w C#. Jak to mogę zrobić w najprostszy sposób? Macie jakieś dobre technologie do polecenia? Robiłem coś takiego w Javie i używałem bazy danych Oracle do tego tylko że jakbym skorzystał z tego teraz to klient razem z aplikacją musiałby instalować bazę danych osobno. Chyba że jest jakaś możliwość dystrybucji tego z aplikacją? Ewentualnie czy Microsoft ma jakieś
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki, możecie mi doradzić, nakierować? Wybrałem sobie dwa kierunki studiów tak wstępnie. Teraz jestem w ostatniej klasie #techbaza technik informatyk - radzę sobie i jestem elastyczny, jeśli chodzi o nowe umiejętności.

1. Inżynieria kosmiczna - jestem bardzo into #kosmos i chciałbym włożyć jakąś cegiełkę w eksplorację kosmosu () To moje hobby, mógłbym się zajmować tym cały czas - projektowanie różnego rodzaju
Przemysl - Mirki, możecie mi doradzić, nakierować? Wybrałem sobie dwa kierunki studió...

źródło: comment_iEasL6jGVu5kkSRFjxYC36Val1Edz2dq.jpg

Pobierz
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@relik39: Sugerują spłaszczenie widoku (subquery flattening), które i tak by mogło nastąpić.

Widok zawsze jest traktowany jako zapytanie go generujące (mniej więcej).
Hinty mają na celu zmiejszenie liczby potencjalnych planów.
  • Odpowiedz
@plushy: ok, już doczytałem o co w tym chodzi, po prostu operując na samej nazwie widoku, bez jawnego podawania generującego go zapytania nie było dla mnie na pierwszy rzut oka oczywiste co się dzieje w tej transformacji. Thx za wskazówki.
  • Odpowiedz
Mirki z #bazydanych #sql #mysql potrzebuję małej pomocy od kogoś trochę bardziej obytego z zapytaniami.
Mam 2 tabelę - jedna, o nazwie page - przechowuje informacje o stronach, id, nazwa itd.
druga tabela przechowuje informację o poszczególnych wyświetleniach użytkowników - nazywa się view, posiada pola id, useragent, id strony(id z tabeli page) oraz datę.
Pytanie brzmi - jak za jednym zamachem otrzymać pełną informację o stronie
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kondominium-rosyjsko-niemieckie: SQL wszędzie podobny. Jeżeli chcesz administrować postgresem to a) naucz się pghba.conf b) pobaw się slonym c) pgpool (moim zdaniem konieczne) d) RTFM (dla postgresa jest świetna) e) czytaj polskiego guru od postgresa f) zainstaluj sobie jakiś język programowania w postgresie (np. plpython) żebyś nie musiał się grzebać w tych durnych PgSqlach. No i jak będziesz miał problem to śmiało pytaj ( ͡° ͜ʖ ͡
  • Odpowiedz