Varchar(Max) – jeśli nie jest za duży może być zapisany w strukturze rekordu

2011-08-15

varchar(max) to typ pozwalający zachowywać w bazie danych 2^31 bajtów danych. Ponieważ rekordy znajdują się na stronach, a rozmiar strony to 8 KB, to takie dane trzeba przechowywać poza rekordem. W rekordzie zajmuje się jedynie 16 bitów na wskaźnik. Istnieje opcja pozwalająca przechowywać dane typu varchar(max) na stronie z rekordem o ile oczywiście w danej stronie zostało odpowiednio dużo wolnego miejsca. Czytaj dalej »

By Rafał Kraik in SQL

Dlaczego nie można indeksować po polu varchar(max)

2011-08-14

Zacznijmy od tego co to jest varchar(max). Dawno temu, w wersji SQL 2000 kiedy chciałeś umieścić w tabeli duże pole z zawartością tekstową mogłeś skorzystać z pola typu text. W Accessie zaś odpowiednikiem varchar(max) jest typ nota. Zazwyczaj definiując tabelę i jej kolumny, określasz rozmiar przechowywanych danych oraz sposób kodowania np varchar(20) lub nvarchar(20), kiedy jednak wiesz, że w polu ma być przechowywane coś dużego, to odgadywanie tej wielkości jest problematyczne… może varchar(100), a może varchar(1000)…. Czytaj dalej »

By Rafał Kraik in SQL

Wykonanie czynności dla wielu tabel w bazie danych lub dla wielu baz danych

2011-08-13

Zdarza się że pewną czynność (zazwyczaj administracyjną) musisz wykonać względem wszystkich lub kilku wybranych tabel w bazie danych. Administrator bazy danych marzy wtedy o poleceniu rodem z C# np.

foreach(table in sys.tables)
{
     EXECUTE sp_spaceused table
}

Niestety tego nie ma… Można się posiłkować kursorem lub tworzyć własne procedury, albo… użyć nieudokumentowanej procedury sp_MSforeachtable ! Czytaj dalej »

By Rafał Kraik in SQL

Jak zsynchronizować kalendarz z Outlooka z kalendarzem GMail i z kalendarzem na Android?

2011-08-10

Jesteś w domu i zastanawiasz się co sobie zaplanowałeś do zrobienia w pracy w przyszłym tygodniu. Jesteś w pracy i zastanawiasz się czy nie obiecałeś żonie zarezerwować jednego dnia na wspólny wypad za miasto. Jesteś w delegacji i nie jesteś pewien kiedy dysponujesz wolnym czasem… Kto współpracuje z wieloma osobami na wielu frontach i skusił się na prowadzenie elektronicznego kalendarza musi spotykać się z takimi problemami. Ja też. Ale już go rozwiązałem… Czytaj dalej »

By Rafał Kraik in Helpdesk

Jak i po co zrootowałem Androida?

2011-08-08

Po pierwsze co to znaczy zrootować – wg mnie to dokonać takiej zmiany konfiguracyjnej telefonu, aby możliwe było uruchamianie aplikacji w trybie administratora.

Po drugie po co? Bywają takie operacje, których programiści aplikacji nie przewidzieli do wykonania w swoim kodzie. W moim przypadku, nieszczęśliwie i w pośpiechu, jako główne konto e-mail skojarzone z androidem wybrałem nie to konto co by należało… W efekcie telefon synchroniczował się nie z moim kontem email na gmailu tylko z pewnym kontem 'technicznym’. Niestety Google nie pozwala zmienić tego konta 🙁 Jedyne co można zrobić to przywrócić telefon do ustawień fabrycznych, a tego zrobić nie chciałem. Czytaj dalej »

By Rafał Kraik in Linuxy

Jak sprawdzić jaka jest rozdzielczość ekranu w c#

2011-08-03

Tym razem zadanie polegało na otwarciu okna, które zajęłoby 1/6 ekranu od góry. Trzeba więc sprawdzić jaka jest rozdzielczość ekranu na komputerze. Można tego dokonać wykorzystując właściwości klasy System.Windows.Forms.Screen. W moim przypadku czynności te umieściłem w metodzie Shown formy: Czytaj dalej »

Jak automatycznie odświeżyć zawartość strony html?

2011-07-17

Niby proste, ale jak się nie wie….

Na początku strony trzeba dodać fragment wyróżniony na czerwono:

<html>
<head>
<meta http-equiv=refresh content="600; URL=http://adresserwera/strona.html">
</head>
<body>
... tu zawartość strony
</body>
</html>

Wartość 600 oznacza, że strona ma być odświeżana co 600 sekund czyli co 10 minut.  URL określa adres odświeżanej strony (czyli właśnie tej strony)

By Rafał Kraik in Helpdesk