Tym razem na tapecie znowu Excel, a w nim wykres przestawny. Z tym, że chcemy, aby wykres przestawny (liniowy) składał się z kilku krzywych, a między nimi, aby pojawiły się przerwy. Coś w tym stylu:
Wykres przestawny w kilku oddzielonych blokach (przerwy na wykresie przestawnym)
Wyłączone constrains
Wszyscy chcemy żeby nasze bazy danych działały idealnie i aby nic ich nie spowalniało. Jeśli mowa byłaby o samochodzie, to teraz opowiedziałbym o sprawdzaniu oleju, ciśnienia w kołach itp. Mowa jedanak o bazie danych. Oto co możesz zrobić, aby twojej bazie było lżej.
Jak pisałem w tym artykule możesz chwilowo (np. przed wykonaniem importu) wyłączyć constrainy. Dzięki temu import może wykonać się szybciej. Pamiętaj jednak, aby wyłączony constrain włączyć i to najlepiej z opcją WITH CHECK!
Opcja with check powoduje, że wszystkie dane znajdujące się w tabeli zostaną przed włączeniem check sprawdzone, czy aby na pewno nie naruszają zasad określonych przez check. Owszem – ryzykujesz. Jeżeli takie niepoprawne dane się znajdą, to otrzymasz komunikat o błędzie i nie uda się włączyć check-a. Musisz w takim przypadku usunąć rekordy naruszające zasady lub ręcznie je poprawić. Czytaj dalej »
BCP import wybranych kolumn ze zmianą kolejności
Zadanie:
Wykorzystując plik formatu należy zaimportować tylko niektóre kolumny i to jeszcze na dodatek zmieniając ich kolumny.
Załóżmy, że masz plik tekstowy opisany takim oto plikiem formatu:
Niestety tabela w bazie danych ma tylko dwie kolumny. Twoim zadaniem jest zaimportować GroupName do kolumny pierwszej w tabeli, a Name do drugiej kolumny:
W takim przypadku musisz zmienić plik formatu. Pod adresem http://msdn.microsoft.com/en-us/library/ms179250.aspx znalazłem ładny opis jak:
Pobieranie danych z pliku tekstowego
Kilka przykładów importowania danych do SQL Server z plików tekstowych. W poniższych przykłądach wykorzystuję plik format file. Tutaj znajdziesz informację, jak go utworzyć.
1. Pobranie rekordów z pliku i zaimportowanie ich do tabeli w bazie danych:
BULK INSERT HumanResources.Department2
FROM 'C:\temp\dane.txt’
WITH (formatfile=’c:\temp\format.fmt’)
2. Wyświetlenie zawartości pliku tekstowego, jakby to była tabela:
SELECT a.* FROM OPENROWSET(BULK,’C:\temp\dane.txt, formatfile=’c:\temp\format.fmt’)
3. Wyświetlenie zawartości pliku tekstowego, w surowej postaci
SELECT CAST(a.kol1 AS VARCHAR(MAX)) FROM OPENROWSET(BULK,’C:\temp\dane.txt, SINGLE_BLOB) AS a(kol1)
Jak przeindeksować (przebudować) wszystkie indeksy wszystkich tabel bazy danych?
Niestety nie ma w SQL serwerze polecenia 🙁
ALTER INDEX ALL ON ALL REBUILD
Co możemy zrobić:
1. Skorzystać z kursora, który przechodzi przez rekordy sys.tables. Nie będę powtarzał czegoś co juz jest ładnie opisane, zapraszam na blog Pinal Dave: http://blog.sqlauthority.com/2009/01/30/sql-server-2008-2005-rebuild-every-index-of-all-tables-of-database-rebuild-index-with-fillfactor/
2. Skorzystać z nieco ukrytej procedury sp_MSforeachtable, którą kokładniej opisałem tu http://www.mobilo24.eu/wykonanie-czynnosci-dla-wielu-tabel-w-bazie-danych-lub-dla-wielu-baz-danych/ a z kolei pod tym adresem znajdziesz rozwiązanie problemu indeksowania z wykorzystaniem tej procedury: http://geekswithblogs.net/robz/archive/2009/06/09/sql-server-2005-sql-server-2008—rebuild-or-reorganize.aspx
3. Wyklikać sobie tzw Maintnance Plan, względnie zbudować go samodzielnie w Integration Services (Business Inteligence Management Studio).
BCP nie można zaimportować pustych linii.
Próbowałem zrobić wydaje się prostą rzecz. Poprzez bcp wyeksportować dane w postaci czytelnego tekstu do pliku, przenieść plik na drugi serwer i tam go zaimportować.
Zacząłem od przygotowania format file (tutaj bazuję na bazie AdventureWorks2012):
bcp adventureworks2012.HumenResources.Department format null -f c:\temp\format.fmt -TKolejny krok to wyeksportowanie danych na jednym serwerze:
bcp AdventureWorks2012.HumanResources.Department out c:\temp\dane.txt -f c:\temp\format.fmt -TDo tej pory wszystko było OK. (Na potrzeby testu możesz teraz zeskryptować tabelę HumanResources.Department, zmienić nazwę na Department2 i usunąć dla kolumny department ID modyfikator IDENTITY. Możesz także usunąć linijkę constraina PRIMARY KEY lub zmienić jego nazwę dopisując np „2”)
Teraz decydujący moment. Importujemy dane: Czytaj dalej »
Outlook nie wyświetla niektórych obrazków w mailach
To był bardzo ważny komputer. Komputer bardzo ważnej osoby. Ten komputer miał Outlooka 2010 i dużo ważnych maili. Niektóre maile, np. newslettery zawierały w sobie wbudowane obrazki. Wiadomo, w Outlooku obrazy domyślnie się zazwyczaj nie wyświetlają, więc trzeba kliknąć prawym przyciskiem myszki na zdjęciu i wybrać polecenie „Wyświetl obrazy”. Niestety na tym komputerze pojawiał się wtedy czerwony x zamiast obrazka. Co ciekawe objawiało się to tylko na niektórych nielicznych newsletterach.
Oto co było przyczyną:
- Nie uszkodzony Outlook
- Nie przepełniony TEMP Outlooka
- Nie dodatki
- Nie antywirus
- Nie połączenie przez proxy
ale jedna opcja Internet Explorera:
Rzeczywiście. Skoro obrazek był linkowany przez SSL, to był zaszyfrowany. Nie było wolno zapisać go na dysku. Tymczasem Outlook wyświetlając maile musi wszystkie elementy składowe maila (w tym zdjęcia) zapisać na dysku.
Wystarczyło odznaczyć opcję „Nie zapisuj zaszyfrowanych stron na dysku” i zdjęcia zaczęły się wyświetlać.
Z tego korzystałem:
http://www.brighthub.com/computing/windows-platform/articles/68790.aspx
http://greenjelloland.blogspot.com/2011/11/solution-red-x-in-outlook-where.html
http://www.msoutlook.info/question/588
http://social.technet.microsoft.com/Forums/en-US/exchangesvrclients/thread/c8e7852c-6d0b-47e6-bc59-172464feb1ac
Ale dopiero tutaj znalazłem przyczynę:
http://community.spiceworks.com/topic/274920-outlook-2010-not-displaying-secure-linked-images


































