Archiwum za rok 2012

Funkcje LAG i LEAD – sięganie do poprzedniego i następnego rekordu

2012-11-17

W zapytaniach SQL musisz czasami sięgnąć do wartości z poprzedniego lub następnego rekordu. W SQL 2012 służą do tego funkcje LAG (poprzedni rekord) oraz LEAD (następny rekord). Popatrz na przykład: USE tempdb; GO CREATE TABLE testlag (Year INT, Month INT, Value INT) GO INSERT testlag VALUES (2012,1,1000), (2012,2,2000), (2012,3,3000), (2012,4,4000), (2013,1,5000), (2013,2,6000), (2013,4,7000); Mamy tabelkę […]

Wykorzystanie XACT_STATE do sprawdzenia stanu transakcji

2012-11-17

Poniższy przykład pochodzi z http://msdn.microsoft.com/en-us/library/ms189797.aspx.  Prezentuje on, jak można dobrze wykonywać transakcje i reagować na potencjalnie pojawiające się błędy. 1. Po pierwsze używaj opcji SET XACT_ABORT ON. Powoduje ona „awansowanie błędów” powodujących przerwanie pojedynczego STATEMENT na błędy powodujące przerwanie batcha, lub przejście do bloku CATCH w przypadku obsługi błędów poprzez TRY/CATCH 2 Używaj TRY/CATCH do […]

By Rafał Kraik in SQL

Mutator Write dla kolumny nvarchar(max)

2012-11-17

Dopiero dzisiaj zauważyłem, że w SQL mamy coś takiego! Jest to metoda pozwalająca na dokonywanie zapisu do koluny nvarchar(max) w taki sposób, aby zmienić część tekstu na inny. Poniżej prezentuję przykład wzięty z http://decipherinfosys.wordpress.com/2007/07/24/update-textntext-or-varcharmax-data-type-columns-in-sql-server/ Popatrz na ten przykład:  Tworzysz tabelkę: CREATE TABLE Test (ID INT IDENTITY, TXT NVARCHAR(MAX))  Wstaw do niej rekord: INSERT Test VALUES(’It […]

By Rafał Kraik in SQL

Korzystanie z aliasów SQL

2012-11-15

Alias do serwera SQL musi być konfigurowany na systemie klienckim. Mało wygodne będzie jednak odiwedzanie komputeró po kolei i wyklikiwanie w nim definicji aliasu. Alias wystarczy zdefiniować na jednym komputerze, a następnie wyeksportować z rejestru i importować na pozostałych komputerach. Odpowiednia gałąź rejestru z aliasami serwera SQL to: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo Źródło: http://blogs.msdn.com/b/sql_protocols/archive/2007/01/07/connection-alias.aspx

By Rafał Kraik in SQL

PHP: Pobieranie adresu IP zdalnego klienta

2012-10-18

Rozwiązując pewien problem potrzebowałem uzyskać w skrypcie php adres zdalnego klienta. Właściwy sposób to <?php echo $_SERVER[’REMOTE_ADDR’]; ?> Przy okazji natknąłem się na bardzo przydatny kawałek kodu: <center><b>Server variables</b></center> < hr> GATEWAY_INTERFACE = <?php echo $_SERVER[’GATEWAY_INTERFACE’]; ?> <br> SERVER_ADDR       = <?php echo $_SERVER[’SERVER_ADDR’]; ?>       <br> SERVER_NAME       = <?php echo $_SERVER[’SERVER_NAME’]; ?>  <br>

Apache 2: w Error_log pojawia się komunikat sh: host: command not found

2012-10-15

Apache 2 wykonuje reverse DNS lookup. Potrzebuje do tego komendy host, która prawdopodobnie nie znajduje się w systemie. Sprawdź czy ta komenda występuje w Twoim systemie wydając polecenie host. Jeśli nie to zainstaluj pakiet zawierający tę komendę: yum install bind-utils  

Brak internetu po połączeniu się z VPN (Użycie lokalnego gateway)

2012-10-15

Objaw: po uzyskaniu połączenia poprzez VPN stacja robocza straciła kontakt z Internetem. Przyczyna: Domyślnie po uzyskaniu połączenia VPN stacja robocza otrzymuje nowy adres Gateway, który staje się domyślnym gateway dla tego komputera. Jeżeli gateway był niepoprawnie skonfigurowany, to rzeczywiście jest możliwa utrata połączenia z Internetem, mimo działającego nadal połączenia z VPN Naprawa: Poprawić ustawienia bramki […]