#bazydanych
Mam tabelę użytkowników, chcę zaimplementować tabelę znajomości, więc utworzyłem tabelę 'Friends' z dwiema kolumnami obcych kluczy z tabeli użytkowników. Mogę się jakoś zabezpieczyć na bazie przed duplikacją rekordów?
np. znajmość 2 z 3 to samo co 3 z 2 więc te rekordy są duplikatami.
Brzmi jak popularny problem, ale nie znalazłem dobrego rozwiązania :/
#programowanie #bazy #sqlite3
  • 22
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@RapRose: trigger źle. Wystarczy założyć klucz główny na obie kolumny, i constraint unique na obie kolumny w odwrotnej kolejności, wtedy w definicji tabeli masz zapewnioną unikalność w obie strony, bez triggerów.
  • Odpowiedz
Pytanie czy przechowywanie JSONa w Stringu to bardzo zła praktyka?
Mam tablicę z max po 10 obiektów, zamieniam JSON.stringfy():

"[{"name":"Examle","value":3}]"
#sql #bazydanych #postgresql
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@bonus: Zależy czy chcesz na tych danych działać czy nie. Jeśli po prostu dane przechowujesz i wyciągasz to cię nie obchodzi czy w bazie przechowujesz pdfy, jsony czy stringi, po prostu wpychasz do blob lub string. Ale, jeśli chcesz z tym zrobić coś więcej to postgres natywnie wspiera JSON.
  • Odpowiedz
Ktoś #mongodb #debian #bazydanych ?

Mam problem bo potrzebuję zainstalować wersję 3.0.3 i nie mogę repozytoriów ogarnąć.
Co mam:

Debian 8 jessie - 3.16.0-4-AMD64, 3.16-42- 2-Deb8u5
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jest może tutaj ktoś, kto się zajmuje zawodowo bazami danych? Mam codziennie kopie ok ~40gb z mssql i niby dostałem instrukcje ze najlepiej i najszybciej kompresować wbudowanym w windowsa zipem i wyniki są tak ~5gb w ~45minut. Da się do robić innym programem szybciej/ sprawniej? No oczywiście nie chce skracać czasu kosztem tego ze potem moze byc problem z dekompresowaniem takiego archiwum ( ͡° ͜ʖ ͡°)
#bazydanych
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@brzytew: Długo trochę. Wbudowana kompresja backupów powinna być najszybsza, sprawdź też maszynę na której to obrabiasz i zamontuj lepszy dysk. No i oczywiście ustaw sobie tę kompresję z automatu to nie będzie cię obchodzić czy trwa ona 3 kwadranse czy 3 godziny.
  • Odpowiedz
@brzytew: Dokładnie jak @plushy mówi. Ustaw automatyczną kompresję backupu. Backup będzie wykonywać się szybciej, czas ewentualnego restore'a też bedzie krótszy, a Ty zapomnisz o manualnym kompresowaniu plików.
  • Odpowiedz
#bazydanych Czy ma ktoś może jakieś źródła do nauki Oracle DataBase ? Mam na zajęciach, akurat bym poszerzył wiedzę bo się zainteresowałem tematem.
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Oracle
Mam w polach kolumnie długi ciąg znaków, w ciągu znaków znajduje się kod
A; B; C; Cośtam cośtam; KOD; 312412EEcośtam; data;

W drugiej kolumnie w innej tabeli mam też kod. Z tym że niektóre kody w stringu są inne niż w kolumnie z kodami. Wiem już w których miejscach.
Muszę wyciągnąć kody ze stringa, wyciągnąć pozycję startu i stopu, usunąć i wrzucić tam kod z kolumny z kodami. Albo podmienić. Ktoś coś? Jakiś substring? index?
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@JBFC: zawsze mnie to rozwala jak prosty problem na 3 minuty jest opisany tak ze muszę stracić 10 żeby w ogóle zrozumieć o co chodzi. Zamiast update zrób merge.
  • Odpowiedz
Bad Practices in Database Design: Are You Making These Mistakes? #bazydanych #programowanie
https://www.toptal.com/database/database-design-bad-practices

Microservices are hard—an invaluable guide to microservices. #programowanie
https://hackernoon.com/microservices-are-hard-an-invaluable-guide-to-microservices-2d06bd7bcf5d


#
interface - Bad Practices in Database Design: Are You Making These Mistakes? #bazydan...

źródło: comment_wemj1THbtS8O8A0JLFFELIct5PPDFSwZ.jpg

Pobierz
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

W poprzedniej firmie gdzie pracowalem mielismy najwiekszego klienta z top3 (moze top5), ktory nadal uzywal JVM5 i mieli serwery w Rosji. W 2014 Rosja prawnie cofnela zmiany czasu letni/zimowy. Oracle oczywiscie wydal patche do tego do 7 i 8 (pomimo ze niby 7 juz nie byl wspierany wtedy). Firma podpisala z nimi niesamowicie nieoplacalna umowe, ze dostarczamy support do calosci, nawet do Tomcata do 2020 roku ( ͡°( ͡° ͜ʖ( ͡° ͜ʖ ͡°
  • Odpowiedz
Mam problem z bazą danych w MySQLu. Wywala mi Undefined index on line 45, 47, 48, 49, 50, 51, 52, 53.
$id = $row['id'];
$tresc = $row['tresc'];
$odpa = $row['odpa'];
$odpb = $row['odpb'];
$odpc = $row['odpc'];
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@murgal: Napisz całe zapytanie jakie masz, z półsłówek trudno coś zrozumieć. Dodatkowo jeśli masz więcej niż 1 kolumnę której nie agregujesz, to wszystkie powinieneś mieć w GROUP BY, a nie tylko jedną
  • Odpowiedz
Mirki, taka sprawa dotycząca Accessa. Chciałbym stworzyć formularz, w którym zmiany w bazie dokonywane byłyby nie na bieżąco w momencie wpisywania danych do każdego z pól z osobna ale dopiero po wciśnięciu przycisku (po uprzedniej walidacji). Z tego co zauważyłem bez VBA się nie obędzie. Jak to ogarnąć?
Pytanie numer dwa, jak zrobić aby w każdym rekordzie (dodatkowym polu) pojawiała się również informacja dotycząca użytkownika, który dany rekord stworzył (późniejsza edycja miałaby
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@ojsak:
1: Dwie opcje, albo jakiś arkusz/arkusze z listą zmian wysyłanych do bazy po zatwierdzeniu guzikiem, albo ewentualnie program działający cały czas w tle, trzymający te dane np. w arrayu (pętla z DoEvents).
2: Application.UserName wpisywane do pola w tabeli podczas inserta?
  • Odpowiedz
Cześć, zacząłem podstawy SQL z SQLzoo i napotkałem mały problem. Nie rozumiem, dlaczego wynik w tym jest zwrócony dopiero po dodaniu linii: AND y.name != x.name. Dlaczego jest ona niezbędna? Czy ktoś mógłby mi to łopatologicznie wytłumaczyć? Zadanie wygląda w całości tak:
--#10
/*
Some countries have populations more than three times that of any of their neighbours (in the same continent). Give the countries and continents.
*/
SELECT name, continent
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Rugger: żeby do porównania nie brać kraju który sprawdzamy, bo on nigdy nie będzie miał populacji większej niż jego populacja pomnożona * 3. Masz warunek population > ALL ... który da TRUE tylko, jeśli populacja kraju będzie większa od 3krotności WSZYSTKICH krajów z danego kontynentu, więc jeśli nie wykluczysz sprawdzanego kraju, to nigdy nie będzie prawdą, bo zawsze będziesz porównywać x > 3x
  • Odpowiedz
@Rugger: No to się cieszę :) Samego SQLa to uczyłem się z neta, tak jak Ty. Na początku to chyba od Andrzeja Klusiewicza (wcześniej jego stronka o oracle ludzkim głosem), teraz wrzucił to na nową_stronę. Potem głównie książki bardziej o projektowaniu baz, następnie samym Oraclu (bo w tej technologii pracuję odpowiadając na drugie pytanie). Jak ogarniesz SQLa, to fajna książka to np ta antywzorce
  • Odpowiedz
Czy mógłby ktoś polecić strony gdzie mogę znaleźć bazy danych w formacie obrazów potrzebne do nauki sieci neuronowych? Interesują mnie duże ilości danych zdjęć owoców w przyzwoicie posortowanych paczkach. Teoretycznie dość łatwy target, ale nie mam pojęcia, gdzie takich rzeczy szukać.

#machinelearning #datascience #studbaza #bazydanych
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Siema mireczki, potrzebuję wyciągnąć historie zmian na jednym z pól z bazy danych, jednak w żaden sposób nie mogę znaleźć sposobu żeby to zrobić, jakby historia sama w sobie była tabela, przez co nie mogę jej przypisać do zapytania sql, istnieje jakas komenda w sql to ułatwiająca? #sql #bazydanych #kwerendy

Możliwe, że napisałem mało jasno więc jak coś pytajcie co jeszcze powiedzieć
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@leszekwl: nie mamy tak zaawansowanych narzędzi, używamy czegoś w rodzaju kwerendy w aplikacji webowe systemu, którego używany , na którą składa się składnia UQL cokolwiek to znaczy, ale wygląda to jak SQL^^
  • Odpowiedz