Większość projektów, w których brałem udział posiadało funkcjonalność wyszukiwania tekstowego. We wszystkich z nich było to zrealizowane klauzulą LIKE w SQL. Często ten element aplikacji stawał się wąskim gardłem i redukował responsywność aplikacji. Kiedy serwery dalej płoną, opiszę tutaj po pokrótce kilka alternatyw dla tego rozwiązania.
Bazy danych i XML 317 dni, 6 godzin, 31 minut temu 194 źrodło rozwiń
Konkretne przypadki które warto znać w temacie konwersji konceptualnego modelu danych (ERD) do modelu fizycznego. Wersja polska i angielska.
Bazy danych i XML 400 dni, 6 godzin, 37 minut temu 46 źrodło rozwiń
Docker, SQL Server, VS Code, mssql i Mundial. Chcesz dowiedzieć się jak zarządzać bazą danych z poziomu Visual Studio Code, zapraszam do lektury.
Całkiem normalną sytuacją jest, gdy każdy sam sobie instaluje server bazy danych. Wtedy u każdego ta nazwa może być różna. Ktoś zainstalował wersję SQL Express, ktoś inny ma już kilka wersji SQL (2008, 2012, 2014, 2016, …) różnie nazwanych, u kogoś innego w poprzednim projekcie instancja musiała się konkretnie nazywać.
Sztuka programowania 601 dni, 8 godzin, 45 minut temu 170 źrodło rozwiń
Całkiem niedawno, albo może i dawno patrząc na postępujący czas, zacząłem pisać pewien programik w pracy. Ma nas on wspomagać w DevOps – owaniu. Dzięki niemu uda się, mam nadzieję, zautomatyzować sporo rzeczy. Oczywiście jak to nowy programik – NodeJs (tego jeszcze nie było), mikroserwisy, komunikacja po REST oraz jakaś baza danych. Zazwyczaj na ten ostatni element zwracałem najmniejszą uwagę, bo dowolny ORM załatwiał sprawę za mnie. Więc tym razem inaczej, bo mogę...
Bazy danych i XML 978 dni, 6 godzin, 37 minut temu 54 źrodło rozwiń
Hej! często w systemach, które implementujemy zachodzi potrzeba aktualizacji jednej kolumny w bazie danych. Przykładowo, tabela Usermoże posiadać flagę IsLocked, która będzie informowała o tym, czy użytkownik jest zablokowany. Chcąc zaimplementować metodę blokującą delikwenta, część pomyśli o następującej implementacji: public async Task LockUserAsync(string id) { var context = new DbContext(); var user = context.Users.SingleOrDefault(u => u.Id == id); user.IsLocked = true; ...
Czasami tak projektujemy naszą aplikacje, że każdy model ma jedną lub kilka cech wspólnych. Od najbardziej oczywistych, jak na przykład ID, poprzez czas i datę utworzenia, modyfikacji, czy-usunięty, czy-opublikowany i inne czy-? W zależności od poziomu lenistwa cechy te definiowane i utrzymywane są w każdej z klas z osobna lub w jednym lub-lub w kilku interfejsach który jest implementowany przez modele.Do momentu pisania posta byłem gościem, który posiadał jeden wsp...
Bazy danych i XML 1353 dni, 20 godzin, 34 minuty temu 155 źrodło rozwiń
Dzisiaj podstawy, ale wcześniej nie miałem potrzeby skorzystania z funkcji GroupJoin. Myślę, że prosty przykład jest najlepszą dokumentacją. Dosyć częstą używaną funkcją jest GroupBy. Jeśli mamy np. listę zamówień w postaci (IdCustomer, Name), wykonując GroupBy na IdCustomer otrzymamy słownik, gdzie kluczem jest identyfikator zamówienia, a wartością lista zamówień danego klienta. GroupJoin, jak sama nazwa sugeruje jest połączeniem Join z GroupBy. Załóżmy, że mamy nast...
Bazy danych i XML 1353 dni, 20 godzin, 34 minuty temu 163 źrodło rozwiń
Wiele osób pewnie już od dawna korzysta LINQPad. Osobiście nigdy nie miałem okazji korzystać z tego narzędzia i zawsze myślałem, że w przypadku TDD jest ono po prostu zbędne. Ostatnio jednak zainstalowałem z ciekawości i okazało się bardzo przydatne w przypadku testowania krótkich snippet’ów. Czasami chcę sprawdzić tylko np. formatowanie daty i wtedy zwykle uruchamiałem osobną instancję Visual Studio, immediate windows w VS albo po prostu pisałem konkretny test. Nie zawsze jednak jest to wygodne i prak...
Sztuka programowania 1552 dni, 9 godzin, 12 minut temu 367 źrodło rozwiń
Nie zawsze kwerendy działające świetnie na małych zbiorach są równie dobre dla dużych tabel. Porównanie wydajności zapytań w funkcji liczebności zbioru. Przykład ze stałą złożonością obliczeniową.
Bazy danych i XML 1873 dni, 17 godzin, 5 minut temu 330 źrodło rozwiń
W artykule przedstawione są różne metody pomiaru wydajności i porównywania szybkości zapytań SQL, bazując na narzędziach dostępnych w SQL Server - widoki DMV/DMF, Extended Events i Profiler. Omówione są także typowe błędy w analizach za pomocą podstawowych statystyk.
Bazy danych i XML 1876 dni, 8 godzin, 22 minuty temu 368 źrodło rozwiń
Wstęp do zagadnień związanych z optymalizacją i mierzeniem wydajności zapytań SQL. Jest to fragment darmowego kursu pisania zapytań SQL opisującego proces przetwarzania kwerend przez silnik bazodanowy.
Bazy danych i XML 1882 dni, 10 godzin, 20 minut temu 471 źrodło rozwiń
Dobrze nazwana klasa, dobrze nazwana zmienna, dobrze nazwana tabela to połowa sukcesu w naszym zawodzie. Czytelny kod zdradzający już na pierwszy rzut oka intencje autora to skarb. Nie trzeba się głowić OCB, WTF, ot czytamy i wiemy co to to robić powinno. Jeśli jeszcze to robi to po prostu miodzik.Dobra nazwa to podstawa! No i taka sytuacja,...
Hi everyone, I was thinking about subject of this post. I tried invent something what wasn't written yet. After few days I asked myself: "What should I expect during reading about programming in Metro?" .The answer: "Workshop!" But not basic "hands-on-lab" which give you some information and recommend you to read many articles if you would like to know more. I was expecting "driving" through all process of project . From bussiness case, architecture, development backend, to Metro application im...
Mobile development 2589 dni, 14 godzin, 44 minuty temu 49 źrodło rozwiń
Ważnym problemem podczas wykonywania testów jednostkowych jest ich wzajemna niezależność. Zmiany wprowadzone w bazie danych przez jeden z testów nie powinny wpływać na wykonywanie się pozostałych testów. Jednym z rozwiązań było by usuwanie w każdym teście zmian które wykonuje on na bazie danych, ale jest to bardzo niewygodne...
Bazy danych i XML 3370 dni, 4 godziny, 49 minut temu 38 źrodło rozwiń
autor: W tym temacie zdecydowałem się poruszyć zagadnienie wstawiania danych do bazy z wykorzystaniem obiektu typu SqlCommand. Początkowo opis miał zawierać również opis wykorzystania SqlDataAdapter, ale temat zrobiłby się wtedy zbyt obszerny jak na jeden post. Dodatkowo poruszona zostanie kwestia zapytań z parametrami oraz wywyoływania procedur składowanych. W poprzednich odsłonach pokazałem jak wykorzyst...
Bazy danych i XML 3378 dni, 1 godzinę, 12 minut temu 83 źrodło rozwiń
Autor: Do dalszej pracy nad projektem niezbędna będzie poprawnie zaprojektowana tabela. W tym momencie projekt całej bazy, aczkolwiek przydatny, nie jest niezbędny. Przed utworzeniem bazy dla swojej aplikacji chciałbym najpierw poszerzyć swoją wiedzę z zakresu modelowania danych. Do dalszych rozważań, pojedyncza tabela (a właściwie dwie ze względu na powiązanie ich), której projekt przedstawię w niniejszym poście, b...
Bazy danych i XML 3380 dni, 5 godzin, 34 minuty temu 77 źrodło rozwiń
RavenDB właśnie został oficjalnie opublikowany. Przez kilka ostatnich dni popołudniami i ł eksperymentowałem z tą technologią. Teraz chciałbym się z Wami podzielić moimi odczuciami. Z początku byłem nastawiony bardzo sceptycznie — kolejna zabawka Ayende. Po Rhino DHT, Rhino PHT, Rhino Queues, Rhino ServiceBus i innych, których nie pamiętam, straciłem entuzjazm. W końcu jednak postanowiłem dać Raven’owi szanse. W końcu j...
Bazy danych i XML 3476 dni, 19 godzin, 1 minutę temu 354 źrodło rozwiń
Oryginalny post: Maybe Normalizing Isn't Normal Autor: Jeff Atwood Jednym z problemów z jakimi mierzymy się teraz przy Stack Overflow jest utrzymanie wysokiego poziomu wydajności relacyjnej bazy danych, podczas gdy jej rozmiar znacząco rośnie. Bardziej precyzyjnie, chodzi o skalowanie naszego systemu tagów. Dobrze zaprojektowana baza danych to baza znormalizowana, tak mówią tradycyjne zasady projektowania. Niemniej jednak, ja nie jestem tego taki pewien. Dare Obasanjo opublikował świetny post pt. Kiedy...
Bazy danych i XML 3557 dni, 4 godziny, 49 minut temu 78 źrodło rozwiń
Czytamy sobie dokument, w którym napisane jest, że system będzie posiadał 3 bazy danych: jedną OLTP i dwie OLAP. Myślimy sobie od razu, że pewnie to jakiś wielki system za grube miliony. Jakież jest nasze zdziwienie, gdy okazuje się, że to mały “systemik”, a każda baza ma tak naprawdę po 3 tabele. Nasuwa się od razu pytanie — po co ta cała komplikacja? Czyż nie uczono nas na studiach, że baza ma by...
Bazy danych i XML 3576 dni, 21 godzin, 41 minut temu 155 źrodło rozwiń