Uživatelská definice databázového objektu: Porovnání verzí
(Napojení číselníku na číselník jiného systému) |
|||
| Řádek 17: | Řádek 17: | ||
== Napojení číselníku na číselník jiného systému == | == Napojení číselníku na číselník jiného systému == | ||
Úpravou definice tabulky číselníku na pohled do číselníku jiné databáze lze řešit napojení číselníku na číselník jiného systému. O takovéto úpravě definice objektu z vaší strany nevíme a pokud my, jako dodavatel systému, přidáme do tabulky nový sloupec, musíte si doplnit sloupec do upravené definice, aby to nezpůsobilo nefunkčnost systému | Úpravou definice tabulky číselníku na pohled do číselníku jiné databáze lze řešit napojení číselníku na číselník jiného systému. O takovéto úpravě definice objektu z vaší strany nevíme a pokud my, jako dodavatel systému, přidáme do tabulky nový sloupec, musíte si doplnit sloupec do upravené definice, aby to nezpůsobilo nefunkčnost systému kvůli chybějícímu sloupci. Poznámka: upřednostňujeme plnění číselníků přes KS WebAPI, ne všechny číseníky jsou ale v KS WebAPI dostupné. | ||
'''Příklad pro MS SQL:''' | '''Příklad pro MS SQL:''' | ||
# Přes MS SQL Server Management Studio si vytáhneme CREATE syntax tabulky, kvůli získání seznamu sloupců a jejich typů. | # Přes MS SQL Server Management Studio si vytáhneme CREATE syntax tabulky, kvůli získání seznamu sloupců a jejich typů. | ||
# Do definice zadáme syntaxi pro vytvoření pohledu CREATE VIEW dbo.cis_cil AS SELECT ... FROM zdroj_DB.dbo.cis_zdroj, | # Do definice zadáme syntaxi pro vytvoření pohledu CREATE VIEW dbo.cis_cil AS SELECT ... FROM zdroj_DB.dbo.cis_zdroj, | ||
# V části SELECT použijeme databázové funkce CAST nebo CONVERT, aby datové typy odpovídaly systému KS (POZOR: datumové položky | # V části SELECT použijeme databázové funkce CAST nebo CONVERT, aby datové typy odpovídaly systému KS (POZOR: datumové položky mohou být na MS SQL typu date i char(10), vždy dodržte typ, který je v create syntax). | ||
# Přes klíčové slovo "as" přejmenujeme sloupec. | # Přes klíčové slovo "as" přejmenujeme sloupec. | ||
# V cílové DB dáme databázovým uživatelům oprávnění číst ze zdrojové tabulky. | # V cílové DB dáme databázovým uživatelům oprávnění číst ze zdrojové tabulky. | ||
<nowiki> | <nowiki> | ||
CREATE OR ALTER VIEW | CREATE OR ALTER VIEW dbo.cis_cil | ||
AS | AS | ||
SELECT | SELECT | ||
Aktuální verze z 18. 2. 2025, 09:56
Uživatelská definice databázového objektu bývá použita ve speciálních případech. Použití konzultujte s tvůrci programu!
Pro úpravu databáze je možné k databázovým tabulkám definovat vlastní syntaxi, která má přednost před definicí danou aplikací.
Správnost syntaxe je zcela na zodpovědnosti správce!
Editace se spouští dvojklikem na požadovaný objekt v seznamu databázových objektů v levé části okna pro úpravu databáze. Objekty, které mají vlastní definici, jsou následně v seznamu modře podbarveny.
- tabulka
- databázový pohled, stored procedura, db funkce, triggery - u těchto není přístupná volba Zrušení objektu. (Script pro rušení objektu není možné definovat, bude vždy použito DROP [objectname].)
Tělo rutiny musí být definováno v celém rozsahu, tedy od klíčového slova CREATE [owner].[objectname] ...
Příklad: w_prac
V seznamu objektů ve skupině Pohled najděte w_prac, poklikejte nad touto položkou myší, otevře se okno se dvěma záložkami Vytvoření objektu a Zrušení objektu . Do textového pole v záložce Vytvoření objektu vkopírujte obsah souboru w_prac.sql. Záložka Zrušení objektu je nepřístupná - netřeba tam nic plnit. Poté spusťte úpravu databáze, kontrolu zda se view provedlo, můžete provést následujícím příkazem:
select * from w_prac
Napojení číselníku na číselník jiného systému
Úpravou definice tabulky číselníku na pohled do číselníku jiné databáze lze řešit napojení číselníku na číselník jiného systému. O takovéto úpravě definice objektu z vaší strany nevíme a pokud my, jako dodavatel systému, přidáme do tabulky nový sloupec, musíte si doplnit sloupec do upravené definice, aby to nezpůsobilo nefunkčnost systému kvůli chybějícímu sloupci. Poznámka: upřednostňujeme plnění číselníků přes KS WebAPI, ne všechny číseníky jsou ale v KS WebAPI dostupné.
Příklad pro MS SQL:
- Přes MS SQL Server Management Studio si vytáhneme CREATE syntax tabulky, kvůli získání seznamu sloupců a jejich typů.
- Do definice zadáme syntaxi pro vytvoření pohledu CREATE VIEW dbo.cis_cil AS SELECT ... FROM zdroj_DB.dbo.cis_zdroj,
- V části SELECT použijeme databázové funkce CAST nebo CONVERT, aby datové typy odpovídaly systému KS (POZOR: datumové položky mohou být na MS SQL typu date i char(10), vždy dodržte typ, který je v create syntax).
- Přes klíčové slovo "as" přejmenujeme sloupec.
- V cílové DB dáme databázovým uživatelům oprávnění číst ze zdrojové tabulky.
CREATE OR ALTER VIEW dbo.cis_cil AS SELECT CAST(id as INT) as id, CAST(num as char(40)) as cislo, CAST(name as char(50)) as nazev, CAST(begdat as date) as plati_od, CAST(enddat as date) as plati_do FROM zdroj_DB.dbo.cis_zdroj
