Heh.. Po raz pierwszy trafiłem na problem z optymalizatorem. Mam serię warunków AND kolumna IN (SELECT... ) AND kolumna IN (SELECT-inny
Dla około 9 warunków jest w miarę ok. Dla 8 explain wykonuje się 2 sekundy, dla 9 minutę. Dla 15 nawet explain nie chce się wykonać.
Rozwiązaniem jest wyłączenie na czas sesji set session optimizer_switch='semijoin=off. Wtedy zapytanie leci w ułamek sekundy razem z wynikami.

Pytanie techniczno, programistyczno, dobromanierowe. Czy w
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@RRybak: Takie mieszanie to ostateczność, najpierw się zastanów czy nie możesz, np. zwiększyć pamięci roboczej. Poza tym pokaż zapytanie to coś się wymyśli, np LIMIT 0, 18446744073709551615 w podzapytaniu.
  • Odpowiedz
Mirunie, piszę funkcję, która pozwala zarządzać dostępem z poziomu panelu administratora. W tabeli dostęp wygląda tak:

[222, 215, 855]
Gdzie liczby to ID pracowników.
Jaka funkcja, o ile taka istnieje pomoże mi cofnąć się przed wpisaniem o jeden znak?
Jak to ugryźć?
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#informatyka #bazydanych #access #mysql Moze mi ktoś wyjaśni pewną prostą rzecz? Mam dwa pytania:
1. Ile może być kluczy obcych w Bazie danych?
2 moze mi ktoś wyjaśnić jak sie oblicza te daty?
month(date()+4)+4
year(date()+400)+30 < czy gdyby zamiast "+30" było np "30" to wtedy mnożymy ? Ale nie wiem do końca co mnożymy xD
Kompletnie tych dat nie ogarniam jak to liczyć, a
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@viktorPL:
1. W MySQL prawdopodobnie nie ma twardego limitu nie wiem jak w access. Sprawdź dokumentację. Jeżeli pytasz bo zastanawiasz się czy nie przekroczysz limitu to prawdopodobnie swój problem chcesz rozwiązać w nieodpowiedni sposób.
2. W MySQL nie ma "date()". Zakładam, że jego odpowiednikiem w MySQL jest NOW(). Tak czy siak pewnie chodzi Ci o rzutowanie typów. Nie wiem jak w Access, ale w MySQL NOW() zwraca np '2017-09-10 20:36:23',
  • Odpowiedz
#php i #mysql Mireczki, podpowiedzcie jaki sposób przechowywania ip (4 i 6) będzie najlepiej "upakowany"? CHAR z oczywistych powodów odpada. W przypadku ipv4 odpalałem ip2long i mieściło się w kolumnie INT. Przy ipv6 można użyć inet_pton ale liczba robi się za duża dla INT i z tego co znalazłem, to trzeba użyć VARBINARY(16). A może da się podzielić na "górną połowę" i "dolną połowę" i wrzucić jako dwie
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Chcę w MySQL zsumować wartości jednego klienta. Ale chcę je sumować do momentu gdy wynik sumowania osiągnie pewien pułap. I jak osiągnie ten pułap to chcę wiedzieć jaka jest data ostatniego rekordu który tą sumę "wyrobił". Ktoś wie czy da się to zrobić za pomocą jednego zapytania, bez użycia while (sumowanie kolejnych rekordów i zakończenie gdy osiągniemy pułap)?

#mysql #php #programowanie
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@MickJagger poluj na wolne konto na ct8.pl. Kiedyś keex był polecany, ale teraz były jakieś zmiany i nie wiem jak to jest. Hostinger jest zdradliwy. Z reklamami cba.pl chodzi całkiem ok
  • Odpowiedz
Mirki, januszmysql here. Używamy we firmie programu ntsn działa on albo lokalnie na bazie SQLite albo zdalnie MySQL. Żeby sprawdzić jak to działa działaliśmy na SQLite i jest powprowadzane trochę napraw, jak teraz bezboleśnie przenieść to z SQLite do MySQL?
#mysql
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@and220: Nie ma prostego sposobu by przeimportować dane z jednej bazy danych do drugiej. Możesz zrobić dumpa i wgrać do drugiej bazy. Możesz zrobić prosty skrypt który ci te dane wgra (kilka godzin roboty), możesz się skontaktować z supportem któremu płacisz za takie rozkminy.
  • Odpowiedz
Mireczki - bazodanowcy ( ͡° ͜ʖ ͡°)
Potrzebuję małego wsparcia.
Mam sobie dajmy na to 2 tabele w MySQLu.
Nazwijmy ją: czasstart i czasstop.
I chodzi mi o wylistowanie uzytkowników ktorzy są w przedziale czasstart
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

mam pytanie #bazydanych #access #mysql #informatyka Wyjaśni mi ktoś na ludzki język co onaczają Agregaty w Ms Access? (policz, suma, srednia, min, max, odchst wariancja, pierwszy, ostatni) Co one konkretnie robią? Z góry dzięki, nie mogę nigdize tego znaleźć, w wykladach od facetki #studbaza nie ma zadnego wyjasnienia...
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@luuzik: oczywiście, że tak. Robisz sobie kilka baz danych, każda z innym użytkownikiem i hasłem, konfigurujesz dostępy, by tylko user o określonym loginie miał dostęp do danej bazy i hajda :) Jeśli nie masz żadnego panelu, polecam użyć phpMyAdmin. Możesz z poziomu PMA tworzyć nowe bazy, dodawać userów i nadawać uprawnienia. W razie pytań - wal śmiało :)
  • Odpowiedz
via Android
  • 1
@jurny_juhas Działam w workbenchu. Kurczę pół dnia kminiłem jak to zrobić:D Jutro jak wrócę do zadania i nie pyknie to się odezwę bo teraz już nie mam do tego głowy :) Dzięki za naprowadzanie
  • Odpowiedz
Cześć. Ostatnio w #pracbaza dyskutowaliśmy nad względnie najlepszą implementacją struktury drzewiastej do pewnego projektu.
Temat co prawda nie został jeszcze wyczerpany, więc jestem ciekawy waszej opinii.
Załączam wam tutaj link do prezentacji, która przedstawia kilka modeli takich struktur drzewiastych.
https://www.slideshare.net/ehildebrandt/trees-and-hierarchies-in-sql
Która według was jest najrozsądniejsza?
Plusy, minusy?
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

moim zdaniem pierwszy (adjency list model), dlatego, że:
1) nie ma redundacji(po kiego grzyba trzymać cały path albo informacje o childach) ponieważ z tego modelu jesteś w stanie zbudować każdy z następnych modeli nie tracąc żadnych informacji
2) opisujesz zależność dla każdego node'a tylko jednym wierszem (potrzebujesz znac tylko parenta, reszte możesz odtworzyć odpowiednim zapytaniem) czyli mniejszy storage
3) jedna tabela, krótszy opis zależności (w tym wypadku dla 1 znaku możesz użyć
  • Odpowiedz
@pepepanpatryk: o kur, co za indolencja i to chyba jeszcze większej liczby osób w zespole, a nie tylko jednego janusza informatyki. Informuję cię więc, że najpierw trzeba wiedzieć jaki problem chcemy rozwiązywać, co chcey przeechowywać w bazie, co to ma robić itd. a nie takie sratu pitu laików
  • Odpowiedz
Mam taki problem i nie mogę znaleźć rozwiązania na necie albo jest już ta godzina że źle szukam.

Wyciągam sobie listę ID z tabeli.

Select ID from articles;

Chciałbym
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Linijka, która nie szkodzi (w teorii), a kij wie czy nie może pomóc. Hakierzy lubią wpisywać różne rzeczy w textbox


@fervi: Jeśli ta linijka ma być dodatkowym zabezpieczeniem przed atakiem na aplikację to już dużo wcześniej coś poszło mocno nie tak.
  • Odpowiedz
@farmaceut: podstawy w większości języków wyglądają tak samo, różnią się składnią, którą można znaleźć na pierwszej lepszej stronie. Pisałem w PHP, JS, CoffeScript, C++, C, Haskellu, Go, Pythonie, Ruby, Javie i Bashu, a jedyną książką do języka jaką przeczytałem po części była "Symfonia C++", jeszcze w gimnazjum. Książki mogą być dobre jak chcesz doczytać o szczegółach danego języka, ale wtedy, moim zdaniem, lepiej sprawdza się oficjalna dokumentacja czy jego kod
  • Odpowiedz
@gogus1415: jeśli chodzi o to jak baza powinna być tworzona i utrzymywana to polecam te dwa linki: http://www.sqlpedia.pl/projektowanie-i-normalizacja-bazy-danych/ ( tutaj głównie zwróć uwagę na normalizację ),
https://pl.wikipedia.org/wiki/ACID, szybka lektura, a obiecuję, że pozwoli uniknąć wielu konfliktów. a co do skryptu to zależy pod czym stoi strona, za dużo w webdevie nie siedzę (bardziej bazy), więc nie nakieruję Cię w 100%, jeśli strona stoi na JSie to może jakiś skrypt który
  • Odpowiedz
OK. dzieki. Postaram się poszukać. strona jest zwykła na PHP więc bez filozofii....
Jeszcze będę szukał rozwiazania może się uda bo widzę że na innych stronach mają kolumnę z awansami :)
Dzięki!
  • Odpowiedz
Hej bazodanowe świry ( ͡° ͜ʖ ͡°)
Potrzebuję informacji czy da się zrobić na bazie MySQL replikację na drugi serwer (tam baza ma być tylko jako read-only)
Haczyk w tym, że potrzebuję tej replikacji realtime, musi to ciągle lecieć na bieżąco, a z tego co się już dowiedziałem, to nie wiem czy działa to w taki sposób (podzielone zdania widzę). W ostateczności może być replikacja np. co godzinę
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@plushy @maniac777
Zrobiłem tą replikację ( ͡° ͜ʖ ͡°) wygląda na to, że działa :) a lagi są do kilkunastu sekund max.
A to blokowanie tabel to jak doczytałem to na samym początku można było wydać polecenie zablokowania tabel w bazie, żeby podczas eksportu bazy nie doleciały jakieś nowe dane.
Dzięki Mircy za pomoc! ( ͡° ͜ʖ ͡°)-
  • Odpowiedz
Siemka, Pytanie problem mam w #mysql tabele "lista" zawiera ona "nazwa listy" "hasło listy" oraz auto inkrementowane "idlisty" tworzę poprzez INSERT podając nazwę i hasło. Jednocześnie mam tabele uprawnienia gdzie jest "idlista" i Iduser" . Pytanie brzmi jak poznać nadane idlisty podczas tworzenia tejże listy? aby odrazu wpisać go w tabele uprawnienia? #sql #bazydanych #programowanie
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach