Dzisiaj kolejny krótki wpis, ponownie dotyczący NHibernate'a. Jak pewnie zdążyliście zauważyć jest to coś co ostatnio sprawia mi najwięcej problemów. Próbując pobrać rekordy przy pomocy zwykłego selecta zawężonego o kryteria w NHibernate, otrzymałem zaskakujący błąd "Cannot update a parent row: a foreign key constraint fails"
Bazy danych i XML 3336 dni, 9 godzin, 9 minut temu 52 źrodło rozwiń
Domyślne wartości bardzo łatwo ustawić za pomocą wizualnego edytora EntityFramework. Wystarczy ustawić właściwość Default w oknie properties: Co jednak gdy chcemy ustawić wartość wyliczoną na podstawie jakieś funkcji? Dla przykładu może być to DateTime.Now bądź też Guid.NewGuid()?Wpisując w te same okienko dostaniemy błąd podczas kompilacji: Error 1 Error 54: Default value (System.Guid.NewGuid()) is not valid for GUID. The value must be enclosed in single quotes in the form 'dddddddd-dddd-dddd-ddd...
Bazy danych i XML 3339 dni, 42 minuty temu 197 źrodło rozwiń
autor: Chciałbym zapoczątkować nową świecką tradycję na moim blogu. Pokusiłem się o nagranie 2 minutowego filmiku na którym prezentuje jak uruchamiać jedno zapytanie na wielu serwerach przy użyciu SQL Server Management Studio. Moim celem jest dzielenie się prostymi, aczkolwiek mam nadzieję, że przydatnymi "pomysłami" w jak najkrótszym czasie antenowym. Poniżej przykładowy filmik. Zachęcam do poświęcenia 140 sekund na obejżenie tego filmiku i oczywiście proszę o komentarze na temat takiej formy knowledge ...
Bazy danych i XML 3344 dni, 9 godzin, 21 minut temu 215 źrodło rozwiń
autor:Czy mój system jest zdrowy? Pewnego słonecznego poranka, z braku laku uruchomiłem SQL Server Profiler'a. Bez konkretnego celu, postanowiłem przejrzeć rodzaj i ilości zapytań SQL które są generowane podczas jednego wejścia na stronę pewnego systemu z którym pracowałem. Ku mojemu zakoczeniu, web'owa aplikacja okazała się bardzo skuteczna w produkcji dużej liczby zapytań do pobrania małej ilości danych. Trace w Profiler'rze wyglądał jak świąteczna lista życzeń. We wspomnianym przypadku, jednym z pow...
Bazy danych i XML 3347 dni, 8 godzin, 28 minut temu 331 źrodło rozwiń
Ignorancja to słabość Ostatnio przeglądałem T-SQL kod w którym została użyta pewna siermiężna acz użyteczna konstrukcja (użyteczna w poprzednich wersjach SQL Server'a, tak od 2005 w dół). Zapytałem się autora kodu, czy przypadkiem nie używają MS SQL Server 2008, otrzymałem pozytywną odpowiedź "nawet w wersji R2". Kod który prezentuje ogólny zarys problemu znajduje się poniżej. Przykłądowa implementacja wstawia rekord do tabeli jeśli jeszcze on nie istnieje, w innym wypadku aktualizuje wartości wybranych...
Bazy danych i XML 3362 dni, 3 godziny, 1 minutę temu 256 źrodło rozwiń
Znam się z NULL'em od lat Oglądając materiały z Introduction to Databases, przypomniały mi się koszmary z dzieciństwa. Zdarzyło mi się wspierać jako programista bądź inżynier support'u kilka systemów używających MS SQL Server'a (każdy z nich był rozwijany przynajmniej 5 lat). Miały one kilka cech wspólnych , jedna z nich sprawiła mi sporo problemów przy rozwijaniu i utrzymywaniu tych systemów. Posiadały one dużo tabel w których definicje kolumn umożliwiały wstawianie wartości NULL. Poniższa definicja ...
Bazy danych i XML 3384 dni, 4 godziny, 37 minut temu 297 źrodło rozwiń
Netmajor's Tech Blogwin 7 C# ASP.NET etcHOMEO mnieKontaktSkrypt sql czyszczący zawartość bazdy danych Witajcie, Czasem zdaża się, że nie chcemy usuwać całej bazy danych, a jednynie usunąc jej zawartość czyli tabele, procedury, widoki i to właśnie robi skrypt znaleziony przeze mnie jakis czas temu Mam nadzieje że się przyda!
Bazy danych i XML 3387 dni, 6 godzin, 12 minut temu 257 źrodło rozwiń
Jak ujarzmić MS SQL Server? Silnik baz danych MS SQL Server to takie niewdzięczne stworzenie w świecie .NET Framework. Relacyjne bazy danych są często w pogardzie u części programistów, postrzegane jako zło konieczne. Niektórzy tworzą NoSQL movement, inni proponują, żeby przenieść bazę danych do pamięci operacyjnej lub chociaż do chumry, usunąć relacje i wcisnąć ten cały data management w obiekty. Oczywiście, na dzisiaj (rok 2011, miesiąc Wrzesień) wielu nieszczęśliwych z tego powodu developerów musi ...
Bazy danych i XML 3391 dni, 7 godzin, 46 minut temu 236 źrodło rozwiń
Do różnych zastosowań, czy to własnych poznawczych, czy też związanych z klientem, czy to z nudów (własciwe skreslić) może nam być przydatny jakiś serwer bazy danych. W kilku najbliższych postach postaram się obrazkowo przedstawić proces instalacji darmowych wersji silnika bazy danych firmy Microsoft począwszy od SQL Server 2005, poprzez 2008, 2008 R2, a na Denali skończywszy. WPROWADZENIE Nie będę później powtarzał opisu środowiska na którym cały zestaw (bo założeniem jest postawienie wszystkiego na je...
Bazy danych i XML 3421 dni, 12 godzin, 38 minut temu 57 źrodło rozwiń
Mamy już zainstalowany nasz SQL Server 2005 with Advanced Services I bardzo nas to cieszy. ale jak pamiętamy pojawił nam się tam problem z kompatybilnością: Musimy więc chcąc lub nie, dążyć do posiadania chociażby Service Pack 3 (a najlepiej SP4, który jest przecież dostępny). Spróbujmy więc doinstalować owe wymagane zestawy poprawek. Możemy zainstalować od razu Service Pack 4 (z założenia każdy kolejny SP zawiera wcześniejsze, tak samo jak Cumulative Updates – CU), ale wybierając jeden z wariantów opis...
Bazy danych i XML 3421 dni, 12 godzin, 38 minut temu 29 źrodło rozwiń
Ten typ błędu może wskazywać, że zapomnieliśmy dodać do naszego projektu referencji do assembly Microsoft.SqlServer.Types . Ja upewniłem się, że takowe posiadam, poza tym w opcjach oznaczyłem aby podczas buildu zapisywało się do output directory czyli do bin’a. Jednak się myliłem! Okazało się, że...
Bazy danych i XML 3422 dni, 17 godzin, 23 minuty temu 51 źrodło rozwiń
Dlaczego w ogóle warto mierzyć wydajność zapytania SQL? Nie jeden raz zdarzyło mi się porównywać czasy wykonania dwóch różnych zapytań SQL które były rozwiązaniem jednego problemu. Nie zawsze w sposób jednoznaczny można określić, które z zapytań jest bardziej optymanlne. W przypadku zapytań wykonywanych na instancji SQL Servera interesują nas następujące parametry czas wykonaniailość odczytów stron potrzebnych do wykonania zapytaniailość zapisów (np. w bazie tempdb)użycie czasu procesora Bardzo pomocny...
Bazy danych i XML 3448 dni, 2 godziny, 49 minut temu 130 źrodło rozwiń
Opis obsługi danych geograficzny w Telerik OpenAccess.
Bazy danych i XML 3448 dni, 2 godziny, 49 minut temu 55 źrodło rozwiń
autor: Bawię się ostatnio publicznymi danymi udostępnionymi z serwisu devPytania (info tutaj O pewnym sukcesie) i już zanim przystąpiłem do próby analizy tych danych pojawił się problem. Dane zostały udostępnione w formacie XML, który oczywiście mimo wszystkich swoich zalet o przenoszalności i dowolnego jego wykorzystania jest średnio zrozumiały przez MS SQL, które to chciałem zaprząc do tejże analizy. Tak więc pierwszą trudnością było to, jak wczytać takie dane do tabel. Na sieci można znaleźć sporo po...
Bazy danych i XML 3484 dni, 9 godzin, 53 minuty temu 165 źrodło rozwiń
W przypadkach, gdy dane edytowane są dość rzadko i przez niewielką liczbę użytkowników, najczęściej stosowanym modelem blokowania danych do edycji jest… brak blokowania. Mówiąc konkretnie – chodzi o OCC, czyli Optimistic Concurrency Control. Pytanie to – w wersji teoretycznej – poruszane było nie tak dawno na devpytaniach. Jeśli możemy założyć, że konflikty będą występować rzadko lub jest to akceptowalne w konkretnym przypadku, który mamy zaprogramować, użycie optymistycznego blokowania jest dobrym i pro...
Bazy danych i XML 3487 dni, 5 godzin, 10 minut temu 296 źrodło rozwiń
Może wydarzyć się sytuacja, że zajdzie konieczność utworzenia unikalnego klucza na kolumnie typu tekstowego (CHAR lub VARCHAR). W tym momencie warto nadmienić, iż każdy znak zajmie wtedy 1 bajt. Jeśli zaś będzie to typ danych unicode (NCHAR lub NVARCHAR), to znak zapisany będzie na 2 bajtach pamięci. Dlaczego o tym wspominam? Ponieważ jeśli wielkość indeksu przekroczy magiczną granicę 900 bajtów pojawia się Error 1946...
Bazy danych i XML 3492 dni, 23 godziny, 49 minut temu 89 źrodło rozwiń
Zachęcam do wzięcia udziału w spotkaniu o nazwie SQL Day 2011 we Wrocławiu. Udział w nim jest bezpłatny. Wszelkie szczegóły na stronie: http://sqlday.pl/ Proponuję zapisać się jak najszybciej, ponieważ ilość miejsc jest ograniczona. 2011, SQL Day, Wrocław
Bazy danych i XML 3510 dni, 1 godzinę, 30 minut temu 80 źrodło rozwiń
Dawno, dawno temu dowiedziałem się z bloga Tibora Karasziego (SQL Server MVP), że optymalizator może wykorzystać obiekty constraint, takie jak CHECK czy FOREIGN KEY (klucz obcy) do optymalizacji określonych klas zapytań. Jakiś czas temu próbowałem pokazać koledze z firmy, jak to działa i przy okazji dowiedziałem się ciekawej rzeczy, na którą dotąd nie natrafił...
Bazy danych i XML 3513 dni, 2 godziny, 52 minuty temu 166 źrodło rozwiń
SQL Server posiada kilka mechanizmów umożliwiających przechowywanie dużej ilości danych np. plików graficznych. FileStream Pierwszych z nich jest FILESTREAM. Przed pojawieniem się typu FILESTREAM, programiści najczęściej zapisywali pliki sami na dysku a lokalizacje przechowali w bazie danych. Rozwiązanie dobre jednak kłopoty powstały w momencie synchronizacji – co jeśli ktoś usunie jakiś plik z dysku? FILESTREAM to nic innego jak zapisanie pliku w bazie danych. W przeciwieństwie do typu varbinary, FILEST...
Bazy danych i XML 3515 dni, 5 godzin, 4 minuty temu 148 źrodło rozwiń
Jakiś czas temu, ku mojemu zaskoczeniu, udało mi się zdać egzamin 88-970 (SQL Server 2008 Microsoft Certified Master Knowledge Exam). To był bardzo trudny egzamin i moja satysfakcja ze zdania go była naprawdę duża. Pierwszy krok do tytułu Microsoft Certified Master (MCM) został postawiony :-) Idąc za ciosem podszedłem wczoraj do egzaminu 88-971 (SQL Server 2008 ...
Bazy danych i XML 3526 dni, 16 godzin, 23 minuty temu 202 źrodło rozwiń