Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 12545|Відповідь: 0

[Джерело] Попередньо визначені винятки системи Oracle та користувачем

[Копіювати посилання]
Опубліковано 19.03.2015 09:28:41 | | |
Створити таблицю stuinfo1
(
       stuid int первинний ключ,
       Stuname varchar(10) не нуль,
       stusex char(2) check(stusex='чоловічий' або stusex='жіночий'),
       Дата Stubir
);
вставити у значення stuinfo ('001','Zhang San','male',to_date ('1999-1-1','yyyy-mm-dd'));
вставити у значення stuinfo ('002','Reese','male',to_date ('1997-12-1','yyyy-mm-dd'));
вставити у значення stuinfo ('003', 'Wang Wu', 'жіночий', to_date ('1995-3-4', 'yyyy-mm-dd'));
вставити у значення stuinfo ('004','хаха','чоловічий',to_date ('2000-7-5','yyy-mm-dd'));
вставити у значення stuinfo ('005', 'haha', 'male', to_date ('1993-7-5', 'yyyy-mm-dd'));


--Системні попередньо визначені винятки
оголошувати
    v_name stuinfo.stuname%type;
Почніть
    Виберіть Stuname у v_name зі stuinfo;
--виняток
-- коли too_many_rows тоді
-- dbms_output.put_line('Результати запиту надлишкові, не можуть бути присвоєні');
кінець;
--виключення, визначені користувачем
оголошувати
    money_error виняток;
    money1 int := 1000;
    money2 int :=& сума переказу;
Почніть
    якщо money1-money2 < 0, то
       raise_application_error (-20001, «Недостатній баланс»);
       --підвищити money_error;
    інше
       dbms_output.put_line('Успішна передача');
    кінець якщо;
--виняток
-- коли money_error тоді
-- dbms_output.put_line('Недостатній баланс');
кінець;

--невизначені винятки
оголошувати
    виняток myerror;
    прагма exception_init(myerror,-1);
Почніть
    вставити у значення stuinfo ('001','aa','female',to_date('1995-3-4','yyy-mm-dd'));
Виняток
    коли myerror тоді
        dbms_output.put_line('Порушення обмеження унікальності первинного ключа');
кінець;

вставити у значення stuinfo1 (1,'SDF','чоловічий','');
Виберіть * з TB1;
Drop Table TB1;
--динамічний sql
Почніть
     негайно виконати 'create table tb1(tid int)';
кінець;

оголошувати
        sqlString varchar2(200);
        tId int:=2;
Почніть
        sqlString:='вставити у значення tb1 (:1)';

        негайно виконати sqlString за допомогою tId;

кінець;


Вибрати * з Stuinfo;
--Неявний курсор
Почніть
        DBMS_OUTPUT. PUT_LINE('Перед тим, як вставити:'|| SQL%ROWCOUNT);
        Оновлення Stuinfo Set Stusex = 'Чоловічий';
        DBMS_OUTPUT. PUT_LINE('Після вставки:'|| SQL%ROWCOUNT);
КІНЕЦЬ;






Попередній:Oracle отримує функції довжини рядка length() та hengthb()
Наступний:Налаштуйте VPN у Redhat Enterprise Server 6.3
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com