Dostałem od klienta bazę danych ze starej wersji serwisu. Problem w tym, że "O Panie a kto to Panu tak #!$%@?ł?" i polskie znaki (oraz inne specjalne) zamienione są w krzaki. I teraz pytanie, czy miał ktoś z czymś takim już do czynienia i wie jak w skończonej ilości czasu to naprawić? Niektóre znaki są w porządku, nie wiem jakie to było kodowania, ale teraz jest utf8polishci. Przykłady krzaków:

Ą
@Sejm: Zrób sobie spis znaków/krzaków i doprowadź do jednolitego wyglądu przez "znajdź i zamień" na zrzucie bazy w edytorze. Po drodze trzeba zmienić kodowanie zrzuconego pliku (albo otworzyć w innym kodowaniu...?). Dokładnie nie powiem, bo na pamięć tego nie umiem (szukałem przez googla jak mi było potrzebne).
@aaandrzeeey:

It's hard to tell which database management systems (DBMB)s are the most popular (...) To work out what's hot, and what's not, DB-Engines uses the following factors:

- Number of mentions of the system on websites, measured as number of results in search engines queries. At the moment, we use Google and Bing for this measurement. In order to count only relevant results, we are searching for " database", e.g.
Pytanie od różowe paska - nie mogę mu znaleźć odpowiedzi w sieci. Zapytanie z fragmentem:

and (from_loc_id in ('P&D') or to_loc_id in('Z01'))
jest wykonywane. W stringu znajduje się znak '&' i zamiast być interpretowany jako normalny znak stringa jest rozumiany jako deklarowanie zmiennej. Jak to poprawić?

Wydawało mi się, że należy wstawić wcześniej / bądź \

Ale nie działa.

#sql #sql #bazydanych
@Blein: wiesz, ja te baze importowalem u siebie za pomoca sqla z backupu. Wtedy zarówno log, jak i data poszly jak po masle. Sprobuj za pomoca polecenia restore database.
Kolejne oferty pracy dla zainteresowanych ( ja to tylko forwarduje ) w centrum Katowic

detale na PW

Service Analyst - FR + EN

Receptionist - FR + EN

Monitoring Operator - FR + 1 rok doświadczenia pracy w IT

Infrastructure Support Analyst - FR + 1 rok doświadczenia w IT oraz podstawowa znajomość UNIX

Unix Admin - FR + 2 lata doświadczenia

Solaris Admin - EN + 2 lata doświadczenia

Oracle DBA
Mam taka sytuacje

tabela nazwijmy ja towar

id| nazwa | ilosc| id_magazyn |

1 | kamera1 | 5 | 1 |

2 | kamera1 | 5 | 2 |

3 | kamera1 | 2 | 2 |

4 | kamera1 | 1 | 1 |

dostaje teraz info ze trzeba zdjac 11 sztuk towaru (obojętnie skąd)

czyli przykładowy wynik

id| nazwa | ilosc| id_magazyn |

1 | kamera1 | 0 | 1
@Crisu: 5000?

while (iloscdozdjecia > 0)

{

if(iloscnadatasecie< iloscdozdjecia) { dataset.ilosc=0; iloscdozdjecia -=iloscnadatasecie);

else

{ dataset.ilosc -= iloscdozdejcia; iloscdozdjecia=0;}

dataset->nastepnywiersz();

}
@Crisu: da się, ale to kombinowanie i nie warto. Ale da się:

-- to zwraca sume ilosci dotychzcas dla kazdego id (wolne bedzie)

select t.id,

(select sum(t2.ilosc) from towar t2 where t2.nazwa=t.nazwa and t2.id <= t.id) as suma

from towar t

where t.nazwa = 'kamera1';

-- to zwraca wiersz, do ktorego wszystkim musimy wyzerowac, i ile zostanie do zabrania, i kolejny wiersz

select ID, ZOSTALO, NASTEPNY_ID

into MAX_ID, ZOSTALO, NASTEPNY_ID

from
Potrzebuję rozwiązania bazodanowego do przechowywania tabeli zawierającej cztery kolumny - dwa pola int, jeden varchar i jedno pole tekstowe, które dla każdego wiersza będzie miało 40 - 60 kB. Docelowa ilość wierszy - kilkaset tysięcy. Żeby nie obciążać API innych serwisów ostatnie pole będzie generowane w momencie wejścia użytkownika końcowego i zapisane do bazy. Generalnie wystarczyłby niewygasający cache - ale przy tym rozwiązaniu nie będę w stanie później przenieść danych do innej
Chciałem zacząć ogarniać bazy danych. Znalazłem sobie jakiś kurs - http://www.sqlpedia.pl/kurs-sql/. Zainstalowałem SQL Server 2014 Management Studio od microsoftu. Chcę dodać przykładową bazę "northwind" i oczywiście nie działa. Niby 2014 nie obsługuję takich starych baz.

Mówię dobra to może jakaś inna. Znalazłem jakieś "IORGDemo" i "AdventureWorksDW2008Big". Też nie działa...

Wiecie gdzie znajdę jakieś przykładowe bazy do praktyki na nich?

#bazydanych #sql
T-SQL


OLTP

@cycjusz157: JA TYLKO NAPISAŁEM NAZWY... XD

W każdym razie - zawołaj kogoś z #mirkofm, oni ogarniają to wszystko (przykład: nvll lub Grzechoooo). Od siebie dodam to coś, a ogółem to poszukaj na Wikibooks wszystkiego na temat samego SQL i rodzajów tego języka.
#bazydanych #sql #postgresql

Jak zrobić wydajny random z dużej tabeli, w której mam numeryczną kolumnę id, ale jest sporo luk. Na przykład: 1,2,5,9,13,22,29 itd. Zwykle korzystałem z tego zapytania: http://stackoverflow.com/questions/8674718/best-way-to-select-random-rows-postgresql, ale w takiej sytuacji często wywala brak rekordów. Teoretycznie mogę zwiększyć ilość generowanych serii (generate_series(1, 1100)), ale może jest coś lepszego?
Mirki, miotam się.

10 lat w webdevie (głównie backend: programista PHP) i znudziło mi się. Od jakiegoś czasu bardziej mnie interesują tematy związane z bazami danych. Zrobiłem certa MySQL Developer i zastanawiam się, co dalej. Czego się uczyć i co czytać żeby: (1) było ciekawe, (2) dało się w miarę na bieżąco wykorzystywać, (3) otwierało jakieś nowe perspektywy.

Na co dzień pracuję z bazą wielkości ~15GB. W pracy niestety(?) jestem senior eng
@Nicrame: Mówiłbyś inaczej, jakbyś przez pół roku albo dłużej wykładał z własnej kieszeni po 2 klocki na serwery, a reklamy / płacący userzy pokrywaliby Ci 100-200 zł z tej kwoty. Brutto ;-)

Ciekawostka - w USA ok. 40% startupów wspartych przez Venture Capital upada w ciągu 3 lat od powstania (dla tych samotnych odsetek to ponad 75%). Chcesz mi powiedzieć, że ludzie, którzy rozwinęli pomysł do poziomu, w którym zainteresowały się
#mysql #sql i grzecznościowo #webdev

nie mogę wykminić zapytania sprawdzającego czy są konflikty - nachodzenie się czasu rezerwacji (FodGodziny, FdoGodziny DATETIME;)

koniunkcja trzech warunków:

1. czas nowej rezerwacji zaczyna się przed istniejącą rezerwacją, ale kończy w jej trakcje

2. czas nowej rezerwacji całkowicie zawiera się w istniejącej rezerwacji (to mam, proste :D)

3. czas nowej rezerwacji zaczyna się w trakcie istniejącej rezerwacji, ale kończy się po niej
@fuuYeah: Twoje rozwiązanie zawiera o wiele za dużo porównań. Przekleję, bo może nikomu nie chciało się kliknąć:

Let ConditionA Mean DateRange A Completely After DateRange B (True if StartA > EndB)

Let ConditionB Mean DateRange A Completely Before DateRange B (True if EndA < StartB)

Then Overlap exists if Neither A Nor B is true ( If one range is neither completely after the other, nor completely before the other, then
@cycjusz157, @venomik: OR nie jest wolny, zawsze będzie szybszy niż UNION, poza tym jak już chcecie kombinować to UNION ALL. Może być natomiast szybsze niż łączenie dwóch kolumn przy konkatenacja baza raczej na pewno nie użyje indeksu.

Najbardziej czytelnym rozwiązaniem powinno być:

WHERE (rok, miesiac) <= (2014,6)