Promotic

MS SQL Server Compact - popis, Instalace a správa

MS SQL Server Compact

Pro potřeby malých a testovacích databázových aplikací lze použít se systémem PROMOTIC i zdarma šiřitelné verze MS SQL Server Compact. Tento produkt, podle licenční politiky firmy Microsoft, lze se systémem PROMOTIC zdarma distribuovat, a tudíž ho použít jako databázový stroj pro aplikace PROMOTIC všude tam, kde tento produkt vyhovuje.
Produkt je ke stažení na strankách firmy Microsoft, http://download.microsoft.com. Stahovat nejnovější verzi (např. MS SQL Server Compact 4.0 SP1).
Upozornění! Na 64-bitových OS Windows je nutno instalovat 64-bitovou verzi.

Charakteristika MS SQL Server Compact

MS SQL Server Compact se liší od ostatních verzí MS SQL Server tím, že veškerá data jedné databáze jsou uložena v jednom samostatném souboru (SDF), obvykle ve složce s daty aplikace. Vlastní MS SQL Server Compact je dodán (nainstalován) v podobě dynamických knihoven (DLL), které jsou zavedeny a volány v rámci procesu aplikace, umožňující přímo aplikaci číst/zapisovat data z/do této databáze pomocí ADO technologie. Jedná se o zjednodušené řešení, kdy se data v databázi snadněji přenášejí, zálohují a konfigurují (pouze jediný soubor), a přístup k němu se realizuje vlastní aplikací v její režii. Jedná se o podobné řešení, jako přístup k Microsoft Access MDB souborům přímo aplikací.
Standardní MS SQL Server se instaluje a běží jako samostatný program (služba), který se stará s svá data centrálně a s nímž ostatní aplikace komunikují pomocí jazyka SQL. Z hlediska robustnosti, výkonu, integrity dat, zejména při jejich sdílení mezi více aplikacemi a počítači, je toto standardní řešení lepší.

Výhody použití MS SQL Server Compact v systému PROMOTIC:
1) Za použití MS SQL Server Compact není potřeba platit žádné poplatky.
2) V případě přechodu na placenou verzi MS SQL Serveru snadný upgrade.
3) Výkonný, stabilní a technologicky vyspělý produkt.
4) Snadná instalace s podporou na většině OS Windows verzích.
5) Není nutná žádná konfigurace databáze, nastavovat seznam uživatelů nebo přístupová práva, protože data patří přímo dané aplikaci a nesdílí se mezi aplikacemi.
6) Snadné zálohování, transakční zpracování, replikace, atd.
7) Projektant ho může využít k vývoji a ladění aplikace, která pak poběží u zákazníka na MS SQL Serveru.
8) Lze nastavit, aby i některé komponenty PROMOTIC zapisovaly svá data do MS SQL Server Compact (např. alarmy, trendy).
9) 'Parametry připojení k databázi' například "Provider=Microsoft.SQLSERVER.CE.OLEDB.4.0;Data Source=d:\pm_data.sdf;ssce:max database size=4091;Persist Security Info=False;".


Nevýhody a omezení MS SQL Server Compact:
1) Velikost jedné databáze může být maximálně 4 GB.
2) Výkonově je horší než ostatní verze MS SQL Server (včetně zdarma verze MS SQL Server Express).
3) Běží v adresním prostoru aplikace, zvyšuje její paměťové nároky a odebírá její procesorový čas.
4) Není vhodná k současnému přístupu ke společným datům mezi více aplikacemi.

Instalace MS SQL Server Compact

MS SQL Server Compact se instaluje příslušným instalačním programem. Současně se nainstaluje také příslušný ADO Provider (např. Microsoft.SQLSERVER.CE.OLEDB.4.0), umožňující aplikaci pomocí technologie ADO získat pomocí SQL příkazů přístup k datům databáze.

Konfigurace MS SQL Server Compact

Aby se nainstalovaný MS SQL Server nebo MS SQL Server Express mohl začít používat z aplikace PROMOTIC, není potřeba provádět žádnou konfiguraci, jako v případě standardního MS SQL Serveru (vytvoření databází a uživatelů s předkonfigurovanými přístupovými právy). Přístup k souboru s databází (SDF) lze omezit heslem (uvádí se v ADO ConnectionString). Po úspěšném připojení databáze (s heslem nebo bez) získává aplikace plný přístup ke všem datům v databázi.
Poznámka! Pokud se PROMOTIC komponenta (trendy, alarmy) odkazuje na neexistující databázi (SDF soubor neexistuje), pak databáze se vytvoří automaticky. Netýká se to přístupu k uživatelským datům (PmaAdo, PmaDatabase), kde databáze musí existovat nebo ji lze skriptem vytvořit. To je rozdíl proti ostatním SQL serverům, kde odkaz musí být vždy do existující databáze, v jiném případě čtení/zápis dat PROMOTIC komponent selže (trendy, alarmy).

Přístup z aplikace PROMOTIC k MS SQL Serveru

Databáze 'pm_data': je v systému PROMOTIC určena jak pro uživatelská data (objekty PmaAdo a PmaDatabase) tak pro data komponent systému PROMOTIC (trendy, alarmy).

Objekt PmaAdo: aplikace může přistupovat buď přímo například pomocí ADO Provider 'SQLOLEDB' nebo přes ODBC pomocí ADO Provider 'MSDASQL' (není nutný zaregistrovaný datový ODBC zdroj 'pm_data'). V tomto objektu je nutno nastavit následující konfigurátory:
1) 'Parametry připojení k databázi', například "provider=SQLOLEDB;server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;".


Objekt PmaDatabase: aplikace může pracovat s daty v této databázi přes ODBC rozhraní (nutný zaregistrovaný datový ODBC zdroj 'pm_data'). V tomto objektu je nutno nastavit následující konfigurátory:
1) 'Technologie' na Přístup přes ODBC.
2) 'Typ databáze' na 'ODBC; Data source'.
3) 'Databáze (soubor, složka, datový zdroj)' na název zaregistrovaného ODBC zdroje, například na 'pm_data'.
4) 'Tabulka (soubor)' na název tabulky, se kterou se bude pracovat (pokud nebude využita možnost SQL příkazu SELECT při otevření tabulky).
5) 'Uživatel' na název uživatele MS SQL Serveru, například na 'pm_writer'.
6) 'Heslo' na heslo příslušného uživatele MS SQL Serveru kvůli autentizaci.
7) 'Parametry připojení k databázi' například "provider=SQLOLEDB;server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;".


Objekt PmaTrendGroup: komponenta trendů může ukládat/číst svá data do/z databáze. V tomto objektu je nutno nastavit následující konfigurátory:
2) a v okně Database MS SQL server backups (zastaralé) nebo Database MS SQL server cyclic je nutno nakonfigurovat položky odkazující databázi, do které se budou zapisovat data.
Tyto jsou předkonfigurovány například takto:
"server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;"
(název instance serveru .\SQLEXPRESS se může lišit).


Objekt PmaAlarmGroup: komponenta alarmů může ukládat/číst svá data do/z databáze. V tomto objektu je nutno nastavit následující konfigurátory:
1) konfigurátor "Typ uložení" na MS SQL databáze.
2) a v okně "MS SQL databáze" je nutno nakonfigurovat položky odkazující databázi, do které se budou zapisovat data.
Tyto jsou předkonfigurovány například takto:
"server=.\SQLEXPRESS;database=pm_data;uid=pm_writer;pwd=pmwriter;"
(název instance serveru .\SQLEXPRESS se může lišit).

Historie:
Pm8.03.02: Pro potřeby malých a testovacích databázových aplikací lze nyní využít i tuto zdarma šiřitelnou verzi a to v objektech PmaAdo, PmaAlarmGroup a PmaTrendGroup.
© MICROSYS, spol. s r.o.