MS SQL Server - tani serwer

MS SQL Server - tani serwer
IZ
  • Rejestracja:ponad 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:4
0

Cześć!

Jestem nowy na forum. Jeżeli temat nie nadaje się do tej grupy to prośba o jego przeniesienie.
Od ponad roku po pracy uczę się programowania. Niestety nie mam żadnego znajomego, który mógłby mi doradzić w pewnych kwestiach związanych z pisaniem aplikacji.

Zrobiłem sobie kursy na Udemy:
C#
WPF
Xamarin Forms
MySql
MS SQL Server
Entity Framework

W tej chwili chciałbym napisach aplikacje, która umożliwiłaby mi połączenie kilku technologi (C#, WPF, MS SQL Server i Entity Framework). Chciałbym utrwalić sobie zdobytą wiedzę. Program tak naprawdę ma być taka małą baza danych (lista zadań do zrobienia). Pracuję w budownictwie wiec wygląda to tak, ze kilka osoba pracuje nad jednym projektem. Każdy z użytkowników mógłby dodać nowy rekord, w którym byłby tytuł, opis zdarzenia, status i kogo z zespołu dotyczy rekord(zdarzenie). Najprościej ujmując użytkownik A, dodaje nowy rekord i zaznacza kogo dotyczy zdarzenie np. użytkownika B. Użytkownik B synchronizuje się z baza danych, zauważa że zostało dodane nowe zdarzenie i rozwiązuje je i zmienia status na Zamknięte, albo dodaje komentarz do rekordu, że np. nie jest w stanie rozwiązać problemu. Później narada burza mózgów itd...

W pracy jak się pewnie domyślacie mamy dysk sieciowy na którym są wszystkie projekty i do którego maja dostęp wszyscy pracownicy. Z tego co zrozumiałem żeby kilku użytkowniku mogło jednoczenie korzystać z jednej bazy danych musi być zainstalowany MS SQL Server, który w pewnym sensie pewni role bufora miedzy użytkownikiem, a baza danych i ma za zadanie min. nie dopuścić do zablokowania całej bazy danych przez jednego użytkownika. Z tego względu, że nie chcę instalować SQL Servera express w pracy, bo szef najprawdopodobniej się nie zgodzi to szukam innego rozwiązania.

Pierwsze rozwiązanie, chociaż wydaje mi się bardzo amatorskie to plik tekstowy, w którym zapisane byłyby wszystkie rekordy. Za każdym razem gdy użytkownik chciałby synchronizować się z takim plikiem tekstowym to w pierwszej kolejności aplikacja sprawdzałaby czy plik nie jest otworzony przez innego użytkownika. Jeżeli byłby otworzony to aplikacja czekałaby maksymalnie 5 s. Jeżeli w tym czasie plik by się zwolnił aplikacja by się synchronizowała i od razu zamykała plik tekstowy. Jeżeli po 5 s nadal nie byłoby możliwości otworzenia pliku to aplikacja wyświetlałaby komunikat np że plik jest zajęty przez innego użytkownika proszę poczekać...

Drugie rozwiązanie to jakiś tani sensowny serwer MS SQL Server dostępny do zakupu w internecie. Serwisy, które wymagają podania karty kredytowej odpadają Nie chce się narażać na koszty, które z tego co się zorientowałem są bardzo duże. Innymi słowy Azure i Amazon odpadają.
I tutaj moje najważniejsze pytanie. Czy w internecie są dostępne do zakupu serwery z MS SQL Server z sensownymi cenami? Przecież chce zrobi amatorska aplikacje, której baza danych będzie zajmowała maksymalnie 5 MB xD Serwer musi mieć możliwość dostępu z zewnątrz. Czyli instaluję aplikacje na swoim komputerze i łącze się z serwerm gdzieś tam na świecie. Dodałem sprostowanie, bo zauważyłem, że pojawiają się serwery (jeżeli dobrze zrozumiałem), które nie umożliwiają ze względu bezpieczeństwa na dostęp do bazy danych z zewnątrz.

Będę wdzięczny za pomoc oraz za naprowadzenie jak rozwiązać mój problem.

edytowany 3x, ostatnio: IvanZwyciezca
neves
  • Rejestracja:prawie 22 lata
  • Ostatnio:około 6 godzin
  • Lokalizacja:Kraków
  • Postów:1114
2

Nie bardzo rozumiem czemu nie możesz zainstalować w pracy SQL Servera express, w sensie w ogóle nic nie chcesz instalować? Jeśli tak to polecam skorzystać z innej bazy danych: SQLite. Nic nie trzeba instalować, plik bazy danych może być na dysku sieciowym, ładnie współpracuje z Entity Frameworkiem, w pełni darmowe i nie trzeba babrać się z równoległą edycja pliku.

A jak koniecznie chcesz MS SQL Server to w ramach webio https://www.webio.pl/hosting-asp-net/porownanie-planow-hostingowych.html masz 250MB bazę MS SQL dostępną za 110zł/netto na rok.


edytowany 1x, ostatnio: neves
cerrato
Napisaliśmy prawie to samo :D Widać wybitne umysły działają podobnie. Albo wersja druga (bardziej prawdopodobna) - pytanie było na tyle oczywiste, że ciężko było doradzić coś innego ;)
neves
e tam, trzymajmy się pierwszej wersji :P
IZ
  • Rejestracja:ponad 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:4
0
neves napisał(a):

Nie bardzo rozumiem czemu nie możesz zainstalować w pracy SQL Servera express, w sensie w ogóle nic nie chcesz instalować?

Nie chce isntalować bo na moja obecna wiedze musialbym z jednego komputera zrobic serwer... Jestem projektantem nie praogramista...
Ogolnie moge cos takiego zrobic ale w ostatecznosci

Jeśli tak to polecam skorzystać z innej bazy danych: SQLite. Nic nie trzeba instalować, plik bazy danych może być na dysku sieciowym, ładnie współpracuje z >Entity Frameworkiem, w pełni darmowe i nie trzeba babrać się z równoległą edycja pliku.

Czy dobrze rozumiem. Kilka osob bedzie moglo pracować rownolegle na jednym pliku?

A jak koniecznie chcesz MS SQL Server to w ramach webio https://www.webio.pl/hosting-asp-net/porownanie-planow-hostingowych.html masz 250MB bazę MS >SQL dostępną za 110zł/netto na rok.

Dzięki wielkie!!!

edytowany 2x, ostatnio: IvanZwyciezca
neves
tak, kilku użytkowników może być podłączonych jednocześnie do jednej bazy sqlite
cerrato
Ale SQLite ma też pewne ograniczenia - np. nie masz kontroli nad użytkownikami, każdy kto ma dostęp do pliku może dowolnie mieszać w bazie. Przy małych obciążeniach daje radę z jednoczesnym wielodostępem, ale przy większych bazach lub bardziej skomplikowanych systemach to może być problem.
cerrato
Moderator Kariera
  • Rejestracja:około 7 lat
  • Ostatnio:około godziny
  • Lokalizacja:Poznań
  • Postów:8774
0

nie chcę instalować SQL Servera express w pracy, bo szef najprawdopodobniej się nie zgodzi

A czemu? Czegoś nie rozumiem - nie chcesz/nie masz zgody na wersję darmową, ale za to możesz skorzystać z usługi trzymanej gdzieś w chmurze i płatnej?
Pamiętaj, że tego SQL'a nie musisz instalować na jakimś Waszym głównym serwerze (może tego się ludzie z firmy obawiają, że coś popsujesz), Możesz dostawić jakikolwiek komputer (zwykły desktop z Windowsem 7 da radę na Wasze potrzeby) i na nim zainstalować sobie tego SQL'a. Na to chyba dostaniesz zgodę, co? ;)

Po drugie - czemu chcesz Ms a nie Postgresa? Microsoftowy posiada pewne ograniczenia w wersji darmowej (aczkolwiek podejrzewam, że Ciebie one nie będą boleć, nie ta skala aplikacji), za to Postgres w opinii wielu osób jest najlepszym dostępnym rozwiązaniem, a do tego jest całkowicie darmowy. Ponadto można go postawić na linuksie, czyli nawet tego Win7 z poprzedniego akapitu nie potrzebujesz.

W temacie dostępu z zewnątrz - jeśli postawisz to u siebie, to można przekierować porty i się wpinać bezpośrednio, ale nie polecam takiego rozwiązania. Lepiej jest to jakoś "obudować" - wystawić na zewnątrz jakiś webservice czy inne API do obsługi operacji na bazie, ale nie wystawiaj SQL na świat, bo może to się niemiło skończyć.

Ostatnia rzecz - plik tekstowy na dysku sieciowym to najgorsza z możliwych opcji. Jak już chcesz iść w takie półśrodki, to wrzuć na ten udział sieciowy nie plik .txt ale basę SQLite. Jeśli tematu nie kojarzysz, to poszukaj: ogólnie rzecz biorąc to fajna sprawa. Masz dużą część funkcjonalności "prawdziwego" SQL, ale niczego nie musisz instalować. Masz bibliotekę do obsługi SQLite, która po prostu operuje bezpośrednio na tym pliku. Na początek powinno dać radę. A jak zrobisz jakiś odpowiedni stopień abstrakcji bazy od logiki, to późniejsza zamiana tego SQLite na coś innego (czy to Ms, czy Postgres) przejdzie praktycznie nieodczuwalnie.

EDIT

Nie chce isntalować bo na moja obecna wiedze musialbym z jednego komputera zrobic serwer

a nie macie jakiegoś kompa, który i tak chodzi cały czas - czy to jakiś serwer plików, czy może komp do obsługi monitoringu? Obecnie można nawet na urządzeniach typu NAS zainstalować SQL - chociażby pierwszy z brzegu link odnośnie instalacji Microsoft SQL na urządzeniu QNAP - https://makeittogether.pl/microsoft-sql-server-na-qnap-bez-windows/


edytowany 1x, ostatnio: cerrato
BlackBad
  • Rejestracja:ponad 8 lat
  • Ostatnio:3 miesiące
  • Postów:454
0

Od biedy pewnie nawet jakiś zwykły Access by tu nawet poleciał - nie wiem tylko jak C# z tym gada :| Dla testu czy to się w ogóle sprawdzi (w sensie cała ta aplikacja i pomysł) to chyba najłatwiejsze rozwiązanie.

IZ
  • Rejestracja:ponad 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:4
0
cerrato napisał(a):

nie chcę instalować SQL Servera express w pracy, bo szef najprawdopodobniej się nie zgodzi

A czemu? Czegoś nie rozumiem - nie chcesz/nie masz zgody na wersję darmową, ale za to możesz skorzystać z usługi trzymanej gdzieś w chmurze i płatnej?
Pamiętaj, że tego SQL'a nie musisz instalować na jakimś Waszym głównym serwerze (może tego się ludzie z firmy obawiają, że coś popsujesz), Możesz dostawić jakikolwiek komputer (zwykły desktop z Windowsem 7 da radę na Wasze potrzeby) i na nim zainstalować sobie tego SQL'a. Na to chyba dostaniesz zgodę, co? ;)

Porozmawiam z chlopakiem od IT moze zaisntaluje Sql expreess na moim kompuerze.
Bardziej jestem skłonny zapłacic za serwer jezeli bedzie w sensownej cenie. Mozliwe, że na jednej aplikacji sie nie skończy.
Chcialbym zeby moje aplikacje mialby mozliwosci zapisywania danych wlasnie gdzies w chmurze niz na samym urzadzeniu. Takie roziwazanie daje wiecej mozliwosci.

Po drugie - czemu chcesz Ms a nie Postgresa? Microsoftowy posiada pewne ograniczenia w wersji darmowej (aczkolwiek podejrzewam, że Ciebie one nie będą boleć, nie ta skala aplikacji), za to Postgres w opinii wielu osób jest najlepszym dostępnym rozwiązaniem, a do tego jest całkowicie darmowy. Ponadto można go postawić na linuksie, czyli nawet tego Win7 z poprzedniego akapitu nie potrzebujesz.

Pierwsze slysze o Postgresie :). Czy bardzo rozni sie MS SQL czy znow bede musial poswiecic pare godzi na nauke takiego oprogramowania? xD
Normalnie niekonczaca sie opowiesc....

W temacie dostępu z zewnątrz - jeśli postawisz to u siebie, to można przekierować porty i się wpinać bezpośrednio, ale nie polecam takiego rozwiązania. Lepiej jest to jakoś "obudować" - wystawić na zewnątrz jakiś webservice czy inne API do obsługi operacji na bazie, ale nie wystawiaj SQL na świat, bo może to się niemiło skończyć.

Czemu nie mozna wystawiac SQL'a na swiat? Do tej pory myslalem ze do tego glownie sluzy.
Chcesz powiedziec ze sql serwer stosuje sie bardziej w sieci lokalnej niz w internecie, bo to jest niebezpieczne?
W takim razie jak dzialaja takie aplikacje jak np messenger, medicover itd? W jaki sposob sa zapisywane dane na serwerze? Bez uzycia np sql serwera?

Ostatnia rzecz - plik tekstowy na dysku sieciowym to najgorsza z możliwych opcji. Jak już chcesz iść w takie półśrodki, to wrzuć na ten udział sieciowy nie plik .txt ale basę SQLite. Jeśli tematu nie kojarzysz, to poszukaj: ogólnie rzecz biorąc to fajna sprawa. Masz dużą część funkcjonalności "prawdziwego" SQL, ale niczego nie musisz instalować. Masz bibliotekę do obsługi SQLite, która po prostu operuje bezpośrednio na tym pliku. Na początek powinno dać radę. A jak zrobisz jakiś odpowiedni stopień abstrakcji bazy od logiki, to późniejsza zamiana tego SQLite na coś innego (czy to Ms, czy Postgres) przejdzie praktycznie nieodczuwalnie.

Kilku uzytkownikow bedzie moglo pracowac na jednym pliku jednoczesnie?
Jezeli kilka osob bedzie moglo pracowac na jednym pliku to idealne rozwiazanie.
Stawiam baze danych na dysku sieciowym kazdy sie do niej z aplikacja podlacza pobiera i zapiusje dane.

EDIT

Nie chce isntalować bo na moja obecna wiedze musialbym z jednego komputera zrobic serwer

a nie macie jakiegoś kompa, który i tak chodzi cały czas - czy to jakiś serwer plików, czy może komp do obsługi monitoringu? Obecnie można nawet na urządzeniach typu NAS zainstalować SQL - chociażby pierwszy z brzegu link odnośnie instalacji Microsoft SQL na urządzeniu QNAP - https://makeittogether.pl/microsoft-sql-server-na-qnap-bez-windows/

Jakis sie na pewno znajdzie. Ale powtorze to jezcze raz wolalbym miec swoj wlasne wykupiony serwer w necie do ktorego bede mogl sie podlaczac jak za chciwle wpadne na zrobienie jakies fajnej nowej aplikacji. :)

edytowany 1x, ostatnio: IvanZwyciezca
UglyMan
  • Rejestracja:około 6 lat
  • Ostatnio:około 3 lata
  • Postów:2206
0

Azure jest za darmo na jakiś czas. Poszukaj sobie, bo bodajże najmniejsza baza w Azur jest za darmo (plan basic) na zawsze. Możesz też popatrzeć czy jakoś nie da się skorzystać z MS SQL Compact.

BlackBad
Na rok - także sam jestem ciekaw co to za koszty miał OP na myśli ... tym bardziej, że sam chciałem z tego skorzystać w nie długim czasie do swoich testów i małych apek dla siebie :|
BlackBad
  • Rejestracja:ponad 8 lat
  • Ostatnio:3 miesiące
  • Postów:454
0
IvanZwyciezca napisał(a):

Drugie rozwiązanie to jakiś tani sensowny serwer MS SQL Server dostępny do zakupu w internecie. Serwisy, które wymagają podania karty kredytowej odpadają Nie chce się narażać na koszty, które z tego co się zorientowałem są bardzo duże. Innymi słowy Azure i Amazon odpadają.

A możesz przybliżyć co to za koszty i gdzie o tym nabyłeś wiedzę ? Serwer SQL na Azure jest darmowy na rok z tego co reklamują - doczytałeś się jakiś * czy co ? Ktoś gdzieś chyba tu na forum wspominał o tym, ze jak się przekorczy limit transferu z bazą to chyba zaczynają coś naliczać - ale to zakldam musiał by być naprawdę duży ruch.
Wiesz coś o tym więcej ? Pytam bo sam chciałem skorzystać z tego w nie długim czasie do własnych testów z "szkoleniową" apką.

cerrato
Moderator Kariera
  • Rejestracja:około 7 lat
  • Ostatnio:około godziny
  • Lokalizacja:Poznań
  • Postów:8774
0

Czemu nie mozna wystawiac SQL'a na swiat?

https://dba.stackexchange.com/questions/23083/how-can-place-sql-server-online-on-the-internet - However, just remember that as soon as you make it publicly available you are opening yourself up to a world of hurt. Not everyone out there is as honest as you might like and people will try and break in - so be prepared.

https://stackoverflow.com/questions/1086554/best-practice-direct-sql-access-vs-web-service - The use of web services tends to be safer, although security is often more a people issue than software issue. But with the web service between the user and the database, the connection to the database is more secure since the user cannot directly access it. (Except for the functionality you provide through the web service.)

A tak własnymi słowami: wystawiając SQL na świat, staje się on podatny na ataki. Co chwila wychodzą jakieś exploity typu 0-day czy inne podatności, które szybko są wykorzystywane do włamywania się. W przypadku jakiegoś własnego rozwiązania, jest ono trudniejsze do złamania.

Kilku uzytkownikow bedzie moglo pracowac na jednym pliku jednoczesnie?

dokładnie tak. Dopóki baza nie będzie jakaś wielka, albo nie będzie wieeeelu jednoczesnych prób zapisu, taki sposób dostępu do niej powinien dać radę. Nie jest to rozwiązanie optymalne, ale na początek całkowicie da radę.

Pierwsze slysze o Postgresie

Taka ciekawostka - forum, na którym teraz sobie piszemy właśnie jest o Postgresa oparte ;) Jest to chyba najlepszy i najbardziej rozbudowany otwarto źródłowy silnik bazy. Ponadto można go zainstalować na Linuksie, jak i Windowsie. A co do różnic - zasadniczo to polecenia w stylu SELECT * WHERE i podobne działają praktycznie wszędzie tak samo, więc dużej (żadnej?) różnicy nie odczujesz. Owszem, przy bardziej zaawansowanych zastosowaniach są już rozbieżności między silnikami, ale to nie jest (przynajmniej - na razie) Twój poziom zaawansowania.


edytowany 1x, ostatnio: cerrato
PA
Tylko, zeby nie robić zamieszania, w tym prównaniu SQL Server do Postgress to ten pierwszy też może być zainstalowany na Linuksie
cerrato
Zgadza się, od niedawna jest taka możliwość. Coś mi świta (aczkolwiek tematu nie zgłębiałem, więc może mam złe informacje) że w takim przypadku mogą występować problemy i wcale nie jest to dobry pomysł. Jeśli ktoś ma coś do dodania/sprostowania to chętnie poczytam.
PA
Uzywam produkcyjnie na 3 i nie mam problemów, ale też nie zagłębialem się w temat z czym borykaja się inni. Szcze to są wersje Express więc żadnych cudów od tych baz nie oczekuje.
cerrato
No a czemu masz M$ na linuksie a nie jakiegoś MySQL/Postgresa?
PA
Bo lubię ;) Tak serio to program który jest obsługiwany działa tylko na MS SQL Server.
IZ
  • Rejestracja:ponad 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:4
0
BlackBad napisał(a):
IvanZwyciezca napisał(a):

Drugie rozwiązanie to jakiś tani sensowny serwer MS SQL Server dostępny do zakupu w internecie. Serwisy, które wymagają podania karty kredytowej odpadają Nie chce się narażać na koszty, które z tego co się zorientowałem są bardzo duże. Innymi słowy Azure i Amazon odpadają.

A możesz przybliżyć co to za koszty i gdzie o tym nabyłeś wiedzę ? Serwer SQL na Azure jest darmowy na rok z tego co reklamują - doczytałeś się jakiś * czy co ? Ktoś gdzieś chyba tu na forum wspominał o tym, ze jak się przekorczy limit transferu z bazą to chyba zaczynają coś naliczać - ale to zakldam musiał by być naprawdę duży ruch.
Wiesz coś o tym więcej ? Pytam bo sam chciałem skorzystać z tego w nie długim czasie do własnych testów z "szkoleniową" apką.

Sprawdzalem jedynie ceny na Azure i ceny sa dla mnie kosmiczne. Ogolnie serwery do profesjonalnego zastosowania, a nie dla osoby, ktora chce sie uczyc.
Jezeli chodzi o Amazona to jedynie gdzies na forum przeczytalem, ze ceny sa podobne do Azure i ze karte trzeba podpinac w obu przypadkach.

Pierwszy rok jezeli dobrze pamietam jest darmowy.

Plan mam taki.
Wykupuje baze danych 250MB bazę MS >SQL dostępną za 110zł/netto na rok.

Sprawdzam czy na pewno da się z nią połączyć bezpośrednio z domowego kompa jezeli tak to bede w ted sposób na niej pracował.
Jeżeli jednak sie nie uda to z wielkim bólem zrobię aplikację na bazie SQLite'a którego liznałem przy nauce Xamarinu.
Bólem, bo uważam że lepiej łączyć sie z serwerm, bo daje wiecej możliwości.

edytowany 1x, ostatnio: cerrato
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)