To dziwne, ale niekiedy w programie trzeba wygenerować coś przypadkowego. Może chodzi o jakiś klucz zabezpieczeń, jakieś hasło, może zmieniający się z sesji na sesję token itp. W takim przypadku lepiej zdać się na dopracowane metody generowania liczb pseudolosowych wbudowanych w .NET. Czytaj dalej »
Generowanie losowego znaku, napisu lub liczby w c#
Jak znaleźć w zapytaniu SQL drugi rekord z kolei w rankingu?
Wiele przykładów pokazuje największą wartość albo najwcześniejszą datę, albo najniższy wskaźnik itp. A jak odnaleźć drugą wartość!? Jak ustalić który produkt był w ramach jednego dużego zakupu kupowany jako drugi? Jak znaleźć drugą co do wartości wielkość zakupu? Czytaj dalej »
Tutorial – Działający przykład Service Brokera (MS SQL 2008)
Serwis broker pozwala na pewne przesyłanie danych między różnymi bazami danych, instancjami, czy nawet serwerami. Poszerza on więc możliwości serwera SQL o możliwość niezawodnego przekazywania informacji poza serwer. Samo przekazywanie danych opiera się o odpowiednie protokoły sieciowe i dostęp uzyskany do ENDPOINT-ów na serwerach.
W poniższym przykładzie zademonstruję działanie Service Brokera w obrębie jednej tylko bazy danych, co zazwyczaj w praktyce się nie zdarza. Można by go rozbudowywać dalej, ale… i bez tego sprawa wydaje się już dosyć skomplikowana.
Poniższy skrypt uruchamiany krok po kroku utworzy działający serwis broker. Można go ściągnąć stad. Więc do dzieła! Czytaj dalej »
Jak wywołać inny program (proces) z programu w c#?
Dziś zmierzyłem się z zadaniem wywołania innego programu z C#. W tym przypadku miałem zaczekać na zakończenie działania tego nowego procesu, a następnie kontynuować swoje działania.
Z pomocą przyszła mi klasa System.Diagnostics.ProcessStartInfo, która została obudowana tak, by po prostu wywołać metodę przekazując do niej jedynie ścieżkę do porogramu, który ma być uruchomiony. Do konstruktora należy przekazać, jaki program chcesz uruchomić. Czytaj dalej »
Wyszukanie pierwszego i kolejnych wystąpień znaku w napisie w T-SQL
Kursant zapytał mnie dziś: Jak wyświetlić w SQL pozycje wszystkich znaków ‘-‘ w polu tabeli. Czyli jeżeli mam napis ABC-DEF-GHIJ-KL, to chcielibyśmy znaleźć pozycję znaku ‘-‘ w danym napisie, a następnie znaleźć jego dalsze wsytąpienia: 4,8, 13.
Pierwsze próby opierały się na składaniu funkcji CHARINDEX:
SELECT CHARINDEX(’-’,’tekst-z-myslnikami’, 1) AS x1, CHARINDEX(’-’,’tekst-z-myslnikami’, CHARINDEX(’-’,’tekst-z-myslnikami’, 1)+1) AS x2 Czytaj dalej »Opcje dostępu do bazy danych dla użytkowników SINGLE_USER, MULTI_USER, RESTRICTED_USER (db user access options)
Opcje dostępu użytkowników do bazy danych kontrolują, kto może korzystać z bazy danych. Używa się ich zwłaszcza podczas wykonywania prac administracyjnych na bazach danych. Ot po prostu, kiedy chcesz coś zrobić, a się nie da, bo są zalogowani inni użytkownicy, masz szansę ich wyrzucić i zostać jedynym władcą swojej bazy danych.
Ale po kolei. Owe stany dostępu to:
- MULTI_USER – domyślny stan. Każdy użytkownik z odpowiednimi uprawnieniami może się połączyć z bazą danych.
- RESTRICTED_USER – opcja 'dla mnie i kolegów’. Pozwala pracować na bazie danych wyłącznie użytkownikom administracyjnym czyli db_owner, db_creator, sysadmin. Nie ma limitu co do ilości połączeń, tzn może pracować wielu administratorów, ale połączenia innych użytkowników będą odrzucane. Ale hola, hola! Co z istniejącymi połączeniami zwykłych użytkowników? Zostaną wyrzuceni, czy zostaną!? Czytaj dalej »
Jak zmienić wyrównanie w kolumnie w DataGridView na prawostronne?
Domyślne wyrównanie danych w komórkach obiektu DataGridView jest do lewej strony. Jeżeli chcesz zmienić ten domyślny schemat i zmienić styl komórek w całej kolumnie. Operacja jest prosta:
DataGridView1.Columns("ContactID").DefaultCellStyl e.Alignment =
DataGridViewContentAlignment.MiddleRight





























