Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Oracle¶ÔÏóÀàÐÍÏê½â

³éÏóÊý¾ÝÀàÐÍ
1¡¢´´½¨ÀàÐÍ
--µØÖ·ÀàÐÍ
CREATE OR REPLACE TYPE AddressType AS OBJECT
(
Country varchar2(15),
City varchar2(20),
Street varchar2(30)
);
2¡¢ÀàÐÍǶÌ×
--´´½¨»ùÓÚǰһ¸öÀàÐ͵ÄеijéÏóÊý¾ÝÀàÐÍ£º¾ÞÐÇÀàÐÍ
CREATE OR REPLACE TYPE SuperStarType AS OBJECT
(
StarName varchar2(30),
Address AddressType
);
3¡¢»ùÓÚ³éÏóÀàÐÍ´´½¨¹ØÏµ±í
CREATE TABLE SuperStar
(
StarID varchar(10),
Star SuperStarType
);
4¡¢»ùÓÚ³éÏóÀàÐÍ´´½¨¶ÔÏó±í
CREATE TABLE SuperStarObj of SuperStarType;
5¡¢Ê¹Óù¹Ôì·½·¨ÔÚ±íÖвåÈë¼Ç¼
INSERT INTO SuperStar VALUES(''001'',SuperStarType(''Zidane'',AddressType(''France'',''Paris'',''People Street NO.1'')));
6¡¢²éѯ±íÖмǼ
£¨1£©SQL> SELECT * from SuperStar;
STARID
----------
STAR(STARNAME, ADDRESS(COUNTRY, CITY, STREET))
--------------------------------------------------------------------------------
001
SUPERSTARTYPE(''Zidane'', ADDRESSTYPE(''France'', ''Paris'', ''People Street NO.1''))
£¨2£©
SELECT s.StarID,s.Star.StarName,s.Star.Address.Country,s.Star.Address.City,s.Star.Address.Street from SuperStar s
STARID STAR.STARNAME STAR.ADDRESS.CO STAR.ADDRESS.CITY STAR.ADDRESS.STREET
---------- ------------------------------ --------------- -------------------- ---------------------
001 Zidane France Paris People Street NO.1
7¡¢³éÏóÊý¾ÝÀàÐ͵ļ̳Ð
£¨1£©´´½¨Ò»¸öÀàÐÍ
CREATE OR REPLACE TYPE PersonType AS OBJECT
(
PersonName varchar(10),
PersonSex varchar(2),
PersonBirth date
) not final;
(2)ÅÉÉúÒ»¸öÀàÐÍ
CREATE OR REPLACE TYPE StudentType UNDER PersonType
(
StudentNO int,
StudentScore int
);
(3)²é¿´Êý¾Ý×Öµä
SQL> DESC StudentType
StudentType extends SYS.PERSONTYPE
Name
------------------------------------------------------------------------------
PERSONNAME
PERSONSEX
PERSONBIRTH
STUDENTNO
STUDENTSCORE
(4)´´½¨¶ÔÏó±í
CREATE TABLE student OF StudentType;
(5)Ïò¶ÔÏó±íÖвåÈëÊý¾Ý
INSERT INTO student VALUES(''Rose'',''nv'',to_date(''1983-05-02'',''yyyy-mm-dd''),1001,98);
(6) ²éѯÊý¾Ý
SQL> SELECT * f


Ïà¹ØÎĵµ£º

OracleµÄÓû§¹ÜÀí ORA

ÅäÖÃÉí·ÝÑéÖ¤
OracleΪÓû§ÕË»§ÌṩÈýÖÖÉí·ÝÑéÖ¤·½·¨£º
(1)ÃÜÂëÑéÖ¤
µ±Ò»¸öʹÓÃÃÜÂëÑéÖ¤»úÖÆµÄÓû§ÊÔͼÁ¬½Óµ½Êý¾Ý¿âʱ£¬Êý¾Ý¿â»áºËʵÓû§ÃûÊÇ·ñÊÇÒ»¸öÓÐЧµØÊý¾Ý¿âÓû§£¬²¢ÇÒÌṩÓë¸ÃÓû§ÔÚÊý¾Ý¿âÖд洢µÄÃÜÂëÏàÆ¥ÅäµÄÃÜÂë¡£
(2)ÍⲿÑéÖ¤
µ±Ò»¸öÍⲿÑé֤ʽÓû§ÊÔͼÁ¬½Óµ½Êý¾Ý¿âʱ£¬Êý¾Ý¿â»áºËʵÓû§ÃûÊÇ·ñÊÇÒ»¸öÓÐЧµÄ ......

OracleÖеÄdecode

ÉÏһƪÎÄÕÂдÁËÒ»¸öoracleµÄÒ»¸öÐÐתÁеÄÀý×Ó£¬ÀïÃæÓõ½ÁËoracleÖÐÖØÒªµÄº¯Êý decode,ÕâÆªÎÄÕ¾ÍÀ´¼òµ¥µÄѧϰÕâ¸öº¯Êý
DECODEº¯ÊýºÍÎÒÃÇÓïÑԽṹÖеÄÌõ¼þÓï¾ä£¨IF£©ÏàËÆ¡£Ëü½«ÊäÈëÊýÖµÓ뺯ÊýÖеIJÎÊýÁбíÏà±È½Ï£¬¸ù¾ÝÊäÈëÖµ·µ»ØÒ»¸ö¶ÔÓ¦Öµ¡£
DECODEº¯ÊýÏ൱ÓÚÒ»Ìõ¼þÓï¾ä(IF).Ëü½«ÊäÈëÊýÖµÓ뺯ÊýÖеIJÎÊýÁбíÏà±È½Ï£¬¸ù¾ÝÊ ......

oracle ÖеÄINTERVAL º¯ÊýÏê½â

INTERVAL YEAR TO MONTHÊý¾ÝÀàÐÍ
OracleÓï·¨:
INTERVAL 'integer [- integer]' {YEAR | MONTH} [(precision)][TO {YEAR | MONTH}]
¸ÃÊý¾ÝÀàÐͳ£ÓÃÀ´±íʾһ¶Îʱ¼ä²î, ×¢Òâʱ¼ä²îÖ»¾«È·µ½ÄêºÍÔÂ. precisionΪÄê»òÔµľ«È·Óò, ÓÐЧ·¶Î§ÊÇ0µ½9, ĬÈÏֵΪ2.
eg:
INTERVAL '123-2' YEAR(3) TO MONTH   & ......

oracleÖÐtypeµÄʹÓÃ

create or replace type mytype IS TABLE OF varchar2(20);
declare type1 mytype :=mytype('1','2','3','4');
i number:=1;
var_str varchar(20):='liaomin';
begin
type1.EXTEND;
type1(type1.COUNT):=var_str;
loop
  dbms_output.put_line(type1(i));
  i:=i+1;
  exit when i=type1.count+1; ......

oracleÁÙʱ±í

˵Ã÷:ÏÂÎÄÖеÄһЩ˵Ã÷ºÍʾÀý´úÂëÕª×ÔCSDN,Ë¡²»Ò»Ò»Ö¸Ã÷³ö´¦,ÔÚ´ËÒ»²¢¶ÔÏà¹Ø×÷Õß±íʾ¸Ðл!
¡¡¡¡1 Óï·¨
¡¡¡¡ÔÚOracleÖУ¬¿ÉÒÔ´´½¨ÒÔÏÂÁ½ÖÖÁÙʱ±í£º
¡¡¡¡1) »á»°ÌØÓеÄÁÙʱ±í
¡¡¡¡CREATE GLOBAL TEMPORARY ( )
¡¡¡¡ON COMMIT PRESERVE ROWS£»
¡¡¡¡2) ÊÂÎñÌØÓеÄÁÙʱ±í
¡¡¡¡CREATE GLOBAL TEMPORARY ( )
¡¡¡¡O ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ