русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

DML: INSERT, DELETE, UPDATE, SELECT, COMMIT WORK, ROLLBACK


Дата добавления: 2015-08-31; просмотров: 805; Нарушение авторских прав


 

CREATE TABLE …

<=1000 стоблцов

NUMBER(h, t),

DATE,

VARCHAR2(т) (max <=4000); CHAR(т) –(max <=2000);

LOB (large objects) (звук, картина, текст,...):

LONG (текст) <=2 Gbyte;

LONG RAW (бинарные коды) <=2 Gbyte;

Создание таблиц при наличии привиллегий – CREATE TABLE или CREATE ANY TABLE

CREATE TABLE testtab (col1 VARCHAR2(10))

STORAGE (INITIAL 100K NEXT 50K

MINEXTENTS 1 MAXEXTENTS99 PCINCREASE 20);

Партициальная таблица:

CREATE TABLE tab (col1 VARCHAR2(10), col2 VARCHAR2(10) )

PARTITION BY RANGE (col1, col2) (PARTITIONp1 VALUES LESS THEN (…)

TABLESPACE p1, PARTITION p2 VALUES LESS THEN (…) TABLESPACE p2);

ALTER TABLE tabDROP PARTITIONp1;

RENAME testtab TO testtab1;

DROP TABLE testtab;

  • Основные функции в Oracle:

TO_CHAR(number/date), TO_CHAR(number/date, <format>) TO_NUMBER(<string>)

TO_DATE(<string>), TO_DATE(<string>, <format>),

TO_DATE(2008||’.’||01||’.’|| 09,’yyyy.mm.dd’)

Установка формата дaты:ALTER SESSION SET NLS_DATE_FORMAT = ’dd:mm:yyyy’



ADD_MONTHS(<date>, n)

ABS(n), COS(n), COSH(n), SIN(n), SINH(n) ,

TAN(n) , TANH(n), LN(n), LOG(<осн>, n), MOD(m, n) (mod(7,5)=2),

POWER(x,y) (power(3,2)=9), ROUND(n [,decimal_degits]), SIGN(n),

CEIL(n) (ceil(10.7)= 11), FLOOR(n) (floor(10.7)=10), SQRT(n)

ASCII(c), CHR(n), INITCAP(string), INSTR(string, sub_string [,n, [,m]])

LENGTH (string), LOWER (string), UPPER (string),

LPAD (string, n), LPAD (string, n[,pad_chars]),

RPAD (string, n), RPAD (string, n[,pad_chars]),

LTRIM (string), RTRIM (string),

SUBSTR (string, start [,length]) (Substr(’abcdef’, 3, 2): cd),

TRANSLATE(string, search_set, replace_set) TRANSLATE (’eger’, ’e’ , ’a’)=’agar’

NVL(выр, <замена>) если выр =NULL, то выр:= <замена>

Для значения NULL – только операции IS NULL, IS NOT NULL

Неправильно – SELECT e_name, sal+comm FROM emp;

Правильно – SELECT e_name, sal+NVL(comm, 0) FROM emp;

DECODE(выр, v_1, trans_1, v_2, trans_2,... v_n, trans_n, default)

SELECT DECODE(job, ’clerk’, ’служащий’, ’president’ ’Президент’, default) FROM emp;

 

 

* Иерархический запрос

В ORACLE9i– возможна обработка структуры дерева таким образом

SELECT … FROM … WHERE ….

CONNECT BY {PRIORвыр = выр | выр = PRIOR выр }

[START WITHвыр = выр ] [ORDER BY …];

Связь между столбцами одной и той же таблицы – при помощи CONNECT BY,

START WITH– задает строку, с которой начинается построение дерева

SELECT код, ФИО, код_начальникаFROMemp

CONNECT BY код_начальника = PRIOR код

START WITHкод_начальника IS NULL;

 

SELECT LEVEL ASуровень,

еname,

deptno

FROM emp

CONNECT BY mgr =PRIOR empno

START WITH UPPER(ename) = ’KING’

ORDER BY deptno;

 

УРОВЕНЬ ENAME DEPTNO

1 KING 10

2 CLARK 10

3 MILLER 10

2 JONES 20

 

3 SCOTT 20

4 ADAMS 20

 

* Операции сo множествами (UNION, INTERSECT, MINUS )

SELECT d_name FROM dept WHERE d_name LIKE ’%s%’

UNION [INTERSECT, MINUS]

SELECTd_name FROMdept WHERE d_name LIKE ’%o%’;

 

Модификация таблицINSERT, UPDATE, DELETE, TRUNCATE

 

INSERT INTO testtab (col1, col2) SELECTe_name, emp_no FROMemp;

CREATE TABLE emp_copy AS SELECT * FROMemp;

UPDATE emp_copy2 ec SET (emp_no, e_name) =

(SELECT emp_no, e_name FROM emp eWHERE e.emp_no=ec.emp_no)

WHERE e_nameLIKE ’I%’;

DELETE FROM emp_copy2 WHERE emp_no IN (SELECT emp_no FROM emp_copy);

UPDATE emp_copy SET e_name= UPPER( SUBSTR(e_name, 1, 1)) ||

LOWER(SUBSTR(e_name, 2,LENGTH(e_name)-1));

TRANCATE TABLE emp_copy; удаление всех строк таблицы

 

* Последовательности

CREATE SEQUENCEseqSTART WITH n

seq.CURRVAL – текущий элементпоследовательности

seq. NEXTVAL – следующийэлементпоследовательности

CREATE SEQUENCE stud_sequence START WITH10000;

INSERT INTO stud (id, first_name, ...)VALUES (stud_sequence.NEXTVAL, ...);

DROP SEQUENCEseq;

 

 

* Синонимы

CREATE SYNONIM empFOR scott.emp

CREATE PUBLIC SYNONIMempFOR scott.emp

DROP SYNONIMemp;

Синоним для удаленной БД:

CREATE PUBLIC SYNONIM synonFOR p.ar@AB_1

AB_1 база данных, таблица ar владелец p.

 

 

PL/SQL

PL/SQL используется в: SQL*Plus, Oracle Forms, Oracle Reports, Oracle Graphics, Oracle Application Server

 

String_1 := ‘Hello’ || ’World’ || ’!’;

 

* Условные операторы

IF <условие1> THEN команды1; [ELSEIF < условие2> THEN команды2; ] …….

[ELSEкоманды_N;] END IF;

 

* Оператор CASE

CASE

WHENлогич.выражениеTHEN выражение

[WHENлогич.выражениеTHENвыражение] ….

ELSEвыражение

END

или

CASEвыражение

WHENзначение THENвыражение

[WHENзначениеTHENвыражение] ….

ELSEвыражение

END

 

 

* Метки<< m >> p; GOTO << m >>;

 

* Циклы.

1). LOOP команды EXIT [WHEN условие]END LOOP;

 



<== предыдущая лекция | следующая лекция ==>
RESOURSE: (CREATE CLUSTER, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TABLE) | VARCHAR2, NUMBER, DATE, BOOLEAN.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.07 сек.