Dobrej pokec   Lišanská šlapka   MSDN   VB na Microsoft.cz   NCHAT Nový design
   Portál  O firmě  Profil  Reference  Produkty  Odkazy  Diskuse  Tisková verze 



  Novinky e-mailem
Pokud chcete být informováni o změnách ,přihlašte se k odběru novinek!
  
  
  Nejčtenější články
 Seznam všech českých hubů abecedně. (32237)
 Seznam hubů nad 100 uživatelů (20957)
 Konfigurovatelné rozbalovací menu (17577)
 Jak na makra (14411)
 Rozbalovací menu v JavaScriptu (2.) (12779)
  Nejstahovanější soubory
 Action Meter (1846)
 Slovní Fotbal (777)
 IE Boss Guard (484)
 zdroják slovní fotbal (383)
 Folder Watcher (370)
  Anketa

  Nabídka portálu

 Adobe Premiere
    Jak se dá udělat
 Alternativní prohlížeče
    FireFox
 ASP
    Tipy a triky
 Direct Connect
    Huby
    Scripty pro HUB
    Tipy a triky CZDC++
 Game Maker
    Tipy a triky
 Hry
    Akční
    Logické
 HTML
    Scripting (VBS,JS)
    Tipy a triky
 Internet
    Užitečné triky
 Microsoft Office
    Tipy, triky, návody
    Užitečná makra
    VBA Tipy a triky
 MS SQL Server
    Nastavení
    Seriály
    Tipy a triky
 Multimedia
    Návody
 Oracle
    PL/SQL
 PHP
    Jak na to
    Tipy a triky
 Užitečné odkazy
    Grafické programy
    Programátorské
 Visual Basic
    DirectX
    Formuláře
    Jak se dá udělat ...
    Užitečné funkce
    Win32Api
    Zdroje
 Visual Basic .NET
    Užitečné funkce
 Vtípky
    Vtipy a anekdnoty
 Vypalování
    DVD Shrink
    Tipy a triky
 Windows
    Jak se dá ...
    Tipy a triky pro XP
    Triky pro IE


Nabídka portálu se při zobrazení článku přesouvá na konec pravého sloupce nabídek.

 Jak na Oracle PL/SQL (2.)

Autor: Kočí Marek
Zdroj: 
Vytvořeno: 27.11.2003
Publikováno: 28.11.2003
Čtenářů: 5892
Unikátních: 5595


Pokračování seriálu o programování v PL/SQL. V tomto díle základní operátory a přetypování proměnných.

Tak jako v každém jazyce, i PL/SQL má své způsoby zápisu operací s proměnnými. Uvedeme si tedy stručný seznam některých způsobů zápisu.

Sčítání

Pro sčítání numerických hodnot použijeme znaménko plus (+).
DECLARE
  pCislo NUMBER :=100;      -- Číslo
BEGIN
  pCislo:= pCislo + 50;
END;
Pro odečítání numerických hodnot použijeme znaménko mínus (-).
DECLARE
  pCislo NUMBER :=100;      -- Číslo
BEGIN
  pCislo:= pCislo - 50;
END;
Pro sloučení textových hodnot použijeme dvě znaménka pipe (||).
DECLARE
  pText Varchar;
  pText2 Varchar;
BEGIN
  pText:= pText || pText2;
END;
Pro násobení a dělení numerických hodnot použijeme znaménka hvězdička a lomítko (*, /).
DECLARE
  pCislo NUMBER :=100;      -- Číslo
BEGIN
  pCislo:= pCislo + 50;
END;
Pro umocňování použijeme zdvojeného znaménka hvězdička (**).
DECLARE
  pCislo NUMBER :=100;      -- Číslo
BEGIN
  pCislo:= pCislo **  5;
END;
Pro logický součet,součin a negaci použijeme operátory OR, AND, NOT.
DECLARE
  pCislo NUMBER :=100;      -- Číslo
BEGIN
  pCislo:= pCislo OR  5; -- soucet
  pCislo:= pCislo AND  5; -- soucin
  pCislo:= pCislo NOT  5; -- negace
END;
Pro porovnávání použijeme tyto operátory:
=     rovnost
< menší než
> větší než
>= větší než nebo rovno
<= menší než nebo rovno
<> nerovno, lze použít i !=
IS NULL Je NULL
BETWEEN V rozmezí
LIKE Obsahuje
IN Je v seznamu

Následuje příklad použití operátorů:
DECLARE
  pCislo1 NUMBER :=100;      
  pCislo2 NUMBER :=120;      
  pCislo3 NUMBER :=99;       
  pCislo4 NUMBER :=121;
  pVeta VARCHAR2(20) := 'Věta slouží pro test';
BEGIN
 IF pCislo1 IS NULL THEN ...            --Kdyz je NULL
 IF pCislo1 BETWEEN pCislo2 AND pCislo3 -- Je mezi
 IF pVeta LIKE '%test' -- končí slovem test
 IF pVeta LIKE 'test%' -- začíná slovem test
 IF pVeta LIKE '%test%' -- obsahuje slovo test
 IF pCislo1 IN (1,2,3,8,100) THEN ... -- je v seznamu
END;

Typové konverze

Toliko tedy k operátorům. Někdy můžeme potřebovat například sčítat i typově nestejné proměnné. Pro tyto případy slouží tzv. přetypování. Jak se takové přetypování dělá? Podívejme se na několik případů:

Datum na text TO_CHAR([datum],[format])
TO_CHAR(SysDate,'FMDD.MM.YYYY')
Číslo na text TO_CHAR([číslo],[format])
TO_CHAR(100.33,'999.99')
Text na číslo TO_NUMBER([text],[format])
IF rok > TO_NUMBER('2003') THEN ...

A na zěvěr nekolik případů formátování pro konverze:

TO_CHAR(100.33,'999.99')  -- vrací '100.33'
TO_CHAR(100.33,'099999.99')  -- vrací '00100.33'
TO_CHAR(100.33,'B99999.99')  -- vrací '  100.33'
TO_CHAR(100.33,'999.99')  -- vrací '100.33'
TO_CHAR(10000.33,'9999,999.99')  -- vrací '10,100.33'

-- pDatum je nastaveno na 13 leden 20003
TO_CHAR(pDatum,'DD.MM.YYYY') -- vrací '13.01.2003'
TO_CHAR(pDatum,'FMDD MONTH.YYYY') -- vrací '13 ledna.2003'
TO_CHAR(pDatum,'FMDD.MON.YYYY') -- vrací '13.LED.2003'
TO_CHAR(pDatum,'FMDD.MON.YY') -- vrací '13.LED.03'
TO_CHAR(pDatum,'DDD') -- vrací kolikaty den v roce '13'
-- pDatum je nastaveno na 2 únor 20003
TO_CHAR(pDatum,'DDD') -- vrací kolikaty den v roce '33'

Příště si probereme zápis procedur a funkcí.



Příspěvky ke článku:



© Swit.cz, Marek Kočí 2003