Uživatelská definice databázového objektu: Porovnání verzí

Z Prirucky
 
(Není zobrazena jedna mezilehlá verze od stejného uživatele.)
Řádek 15: Řádek 15:
Poté spusťte úpravu databáze, kontrolu zda se view provedlo, můžete provést následujícím příkazem:
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
  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.
<nowiki>
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
</nowiki>


== Odkazy ==
== Odkazy ==
* [[Úprava databáze]]
* [[Úprava databáze]]
* [[Systémová příručka]]
* [[Systémová příručka]]

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!

Uzivatelska definice databazoveho objektu.png

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:

  1. Přes MS SQL Server Management Studio si vytáhneme CREATE syntax tabulky, kvůli získání seznamu sloupců a jejich typů.
  2. Do definice zadáme syntaxi pro vytvoření pohledu CREATE VIEW dbo.cis_cil AS SELECT ... FROM zdroj_DB.dbo.cis_zdroj,
  3. 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).
  4. Přes klíčové slovo "as" přejmenujeme sloupec.
  5. 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

Odkazy