Załóżmy, że mamy tabelę z kolumną typu VARCHAR(2500), a w niej sporo wierszy. Wynik zapytania z tej tabeli chcielibyśmy posortować według wspomnianej kolumny. Oczywiście będzie to bardzo czasochłonne, a tym samym słabo wydajne. Jak sobie z tym poradzić?
Strona głównaUżytkownik
lkurzyniec | użytkownik
Bazy danych i XML 41 dni, 18 godzin, 52 minuty temu 165 rozwiń
W każdej aplikacji, wykorzystujacej bazę danych do przechowywania informacji, są elementy/tabele/struktury, których zawartość zmienia się niezmiernie rzadko. W związku z tym, zasadne wydaje się zaimplementowanie mechanizmu przechowywania tychże informacji w “bardziej stałym” obiekcie. Ograniczyło by to komunikację pomiędzy bazą danych i aplikacją, a tym samym zwiększyło wydajność aplikacji. Mechanizm taki można zaimplementować na wiele sposobów. Jednym z nich może być klasa typu Manager do przechowywania...
Jakiś czas temu pokazałem w tym artykule sposób rozszerzenia możliwości obiektu zalogowanego użytkownika (Context.User). Problemem tamtego rozwiązania jest to, iż na końcu każdego żądania tworzony jest na nowo obiekt CustomPrincipal, co w finalnym efekcie znacząco wpływa na wydajność aplikacji. Oczywiście jest to zależne od ilości rzeczy implementowanych przez nasz obiekt. W celu naprawy tego niedociągnięcia należy nieznacznie zmodyfikować kod klasy z pliku Global.asax.cs - zapras...
RightHand DataSet Visualizer to aplikacja (wizualizator) do podglądu danych i struktury obiektów DataSet podczas debugowania kodu w Visual Studio. Narzędzie posiada wiele przydatnych możliwości, które pokrótce opiszę w tym artykule.
Z GridView jest taki kłopot, że w przeciwieństwie do ListView nie implementuje IPageableItemContainer - oznacza to, że nie można bezpośrednio podczepić pod niego DataPagera. DataPager został dodany do frameworka w wersji 3.5 i dostarcza funkcjonalności page’owania (stronicowania?, raczej paginacji). Czyli mamy rozdział i można go umieścić albo gdzieś w hierarchii kontrolek kontrolki data-bound np.: … albo całkiem na zewnątrz. Przed przejściem do implementacji interfejsu dla GridView chciałem zaznaczyć, ż...
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 327 dni, 18 minut temu 82 rozwiń
Mechanizm dziedziczenia jest ogólnie znany oraz chętnie wykorzystywany w programowaniu obiektowym. Nie wiedzieć czemu w aplikacjach internetowych stosuje się go raczej rzadko. W tym artykule chciałbym zaprezentować jak wykorzystać dziedziczenie w sprytny sposób w aplikacji webowej.
Jak ważne i poufne informacje znajdują się w pliku konfiguracyjnym aplikacji (app.config lub web.config), każdy chyba wie. O szyfrowaniu tychże informacji z poziomu konsoli wspominałem tutaj. W tym artykule zaprezentować chciałbym jak szyfrować/deszyfrować sekcje z poziomu kodu. Zapraszam.
Obiekt użytkownika wykonującego żądanie (Context.User) jest powszechnie znany. Dzięki niemu w prosty i szybki sposób sprawdzimy, czy osobnik poruszający się po naszej aplikacji jest zalogowany oraz jaki jest jego login. Dodatkowo, jeśli zrzutujemy ten obiekt na klasę, np. RolePrincipal ...
SQL Search. to dodatek do SQL Server Management Studio (SSMS). pozwalający na szybkie i efektywne przeszukiwanie bazy danych. Zadanej frazy szukamy w elementach, takich jak: tabele, widoki, procedury, konstreiny, triggery, funkcje. Wyszukiwanie jest natychmiastowe, ponieważ...
Bazy danych i XML 517 dni, 1 godzinę, 17 minut temu 86 rozwiń
Buszując w internecie, a dokładnie po googlu, natrafiłem na bardzo ciekawą rzecz - Google Font API. Są to internetowe czcionki udostępnione przez giganta zupełnie za darmo. Ich użycie bądź zastosowanie na stronie www jest banalnie proste.
Tworząc aplikację, na pewnym etapie jej rozwoju, podejmujemy decyzję o implementacji możliwości konfiguracji tegoż systemu. Sposobów, czy też miejsc trzymania ustawień jest kilka. Artykuł opisuje w jaki sposób można zarządzać tymi zasobami.
Na początek geneza powstania problemu. Otóż jest wiele starszych systemów, które komunikują się z bazą danych za pomocą procedur. Otrzymują w ten sposób informacje na przykład w postaci obiektu DataSet czy DataTable, a następnie na nich wykonywane są różne operacje. Mój problem, a raczej pytanie, powstało, gdy któryś raz z kolei brałem pierwszy wiersz z otrzymanych wyników, a następnie tworzyłem z nich konkretny tekst za pomocą string.Format(). “Czy nie można tego przyśpieszyć?” ...
Jak sprawdzić czy uruchomiona jest inna instancja naszej aplikacji? Otóż - jak się okazuje - bardzo prosto, za pomocą Mutex'u.... A co jeśli wynikłaby potrzeba zezwolenia na uruchomienie innej instancji aplikacji, jednakże przy rozróżnieniu ich argumentami startowymi? .....
DPack to zestaw darmowych narzędzi do Visual Studio, stworzony z myślą o developerach, aby przyśpieszyć i ułatwić im pracę z kodem oraz Solution Explorer'em. Zawiera w sobie szereg skrótów klawiszowych, które znacząco usprawniają pracę. Działa podobnie jak feature z Visual Studio 2010 - "NavigateTo", czy cecha nawigacji ReSharpera. Dodatkowe możliwości to na przykład Solution Backup, Solution Statistics, Code Navigation (do szybkiego poruszani...
Workstation ID i HOST_NAMEsobota, 20 marzec 2010 Kiedyś zostałem zmuszony do szybkiego, nawet bardzo szybkiego, zrealizowania zagadnienia: "archiwizacja poczynań użytkownika w systemie". Prościej rzecz ujmując, rejestracji 3 podstawowych operacji na każdej tabeli, a dokładniej jej wierszach, mianowicie: INSERT, UPDATE, DELETE. Poniżej zaprezentuję jak uporałem się z tym zagadnieniem. Zacznę więc od początku. Workstation ID - cóż to jest takiego? Jest to jeden z wi...
Bazy danych i XML 780 dni, 7 godzin, 7 minut temu 38 rozwiń
Jak wiadomo w pliku tym znajdują się informacje konfiguracyjne sterujące pracą aplikacji, np. definicja połączenia z bazą danych lub konfiguracja zewnętrznych serwerów SMTP. Uzyskanie dostępu do tego pliku przez osobę niepowołaną może mieć drastyczne skutki dla aplikacji. Oczywistym faktem staje się zabezpieczenie tych informacji poprzez zaszyfrowanie ich. Służy do tego narzędzie „aspnet_regiis.exe” uruchamiane z konsol...
Jeśli ktoś jeszcze nie wie, to jestem gadżeciarzem. Lubuję się we wszelakich dodatkach, rozszerzeniach, szmerach, bajerach, które ułatwiają mi pracę, a co za tym idzie poniekąd wpływają na moją wydajność. Dlatego też chciałbym zaprezentować darmowy dodatek do Visual Studio o nazwie MetalScroll. Jest on lepszą alternatywą od dodatku RockScroll. Dlaczego? Zaprezentuję Wam jego możliwości, a każdy obiektywnie oceni, który z nich j...
Aby dołączyć do schematu naszej bazy tabele oraz funkcjonalność technologii .NET należy skorzystać z wiersza poleceń Visual Studio (w przypadku zainstalowanego Visual Web Developer Express należy doinstalować C++ 2008, aby się pojawiła konsola). Po uruchomieniu Visual Studio Command Prompt wpisujemy „aspnet_regsql.exe /?” w celu uzyskania szczegółowych informacji o dostępnych funkcjach. Uruchomienie narzę...
Bazy danych i XML 822 dni, 8 godzin, 27 minut temu 142 rozwiń
Polecamy
Ostatnio na blogu
Podsumowanie #5 - tydzień 2...
Najaktywniejsi
