±±´óÇàÄñoracleѧϰ±Ê¼Ç31
pl/sql ±í
ÔÚpl/sql¿éÖÐÁÙʱʹÓá¢ÏñÊý×éÒ»ÑùµÄ¶ÔÏó
°üº¬Ò»ÁкÍÒ»¸öÖ÷¼ü
²»ÄܶÔÁкÍÖ÷¼ü½øÐÐÃüÃû
ÁпÉÒÔÊÇÈκαêÁ¿Êý¾ÝÀàÐÍ
Ö÷¼ü±ØÐëÊÇbinary_integerÀàÐÍ
´óСûÓÐÏÞÖÆ
ÉùÃ÷pl/sql±í
¶¨Òå±íµÄÀàÐÍ
type ÀàÐÍÃû is table of ÁÐÀàÐÍ|±äÁ¿Êý¾ÝÀàÐÍ index by binary_integer;
ÉùÃ÷±í±äÁ¿
±íÃû ÀàÐÍÃû;
ÒýÓÃpl/sql±í
±íÃû(ϱê)
¸³Öµ
±íÃû(ϱê):=±í´ïʽ;
ÊôÐÔ·½·¨:
count --·µ»Øpl/sql±íµÄ×ÜÐÐÊý£»
delect --ɾ³ýpl/sql±íµÄËùÓÐÄÚÈÝ£»
delect(ÐÐÊý) --ɾ³ýpl/sql±íµÄÖ¸¶¨µÄÐУ»
delct(¿ªÊ¼ÐУ¬½áÊøÐÐ) --ɾ³ýpl/sql±íµÄ¶àÐУ»
first --·µ»Ø±íµÄµÚÒ»¸öINDEX;
next(ÐÐÊý) --Õâ¸öÐÐÊýµÄÏÂÒ»ÌõµÄINDEX;
last --·µ»Ø±íµÄ×îºóÒ»¸öINDEX;
declare
Type stuNameTableType is table of student.stu_name%type index by binary_integer;
stuNameTable stuNameTableType;
begin
for i in 1..10
loop
stunametable(i):='student'||i;
end loop;
for i in 1..stunametable.count
loop
dbms_output.put_line('µÚ'||i||'¸öÔªËØ£º'||stunametable(i));
end loop;
end;
±íÀàÐÍÐèҪʹÓÃbulk collectÅúÁ¿°ó¶¨½øÐÐselect¸³Öµ£¬bulk collect×Ó¾äÒ²¿ÉÓÃÓÚFetch bulk collect into ×Ó¾äÖÐ
declare
TYPE studentTableType is table of student%rowtype index by binary_integer;
studentTable studentTableType;
begin
select * bulk collect into studentTable from student order by stu_id;
for i in 1..studentTable.count loop
dbms_output.put_line(studentTable(i).stu_id);
dbms_output.put_line(studentTable(i).stu_name);
dbms_output.put_line(studentTable(i).stu_sex);
dbms_output.put_line(studentTable(i).stu_birthday);
end loop;
end;
RecordÀàÐÍ
ÉùÃ÷
type ¼Ç¼ÀàÐÍÃû is record (
×Ö¶Î1 ÀàÐÍ[not null[:=±í´ïʽ]]
×Ö¶În ÀàÐ
Ïà¹ØÎĵµ£º
ÐèÒª´óÁ¿oracle²âÊÔÊý¾Ýʱ£¬¿ÉÒÔʹÓÃÒÔÏ·½·¨¡£
DECLARE
i INT;
BEGIN
i := 0;
WHILE(i < 100000)
LOOP
i := i + 1;
INSERT INTO TEST_TABLE(ID, XM) VALUES(i, 'ÐÕÃû' || i);
END LOOP;
COMMIT;
END; ......
1)µ¼ÈëoracleÊý¾Ý¿âÎļþ.dmpʱ³öÏÖ´íÎó
imp PERSONNEL_MANAGE/MWQ@MIS file=C:\personnel_manage.dmp fromuser=PERSONNEL_MANAGE ignore=y commit=y grants=y;
IMP-00058: Óöµ½ ORACLE ´íÎó 1017
ORA-01017: invalid username/password; logon deniedÓû§Ãû:
¿ÚÁî:
IMP-00058: Óöµ½ ORACLE ´íÎó 1017
ORA-01017: in ......
ÏÖÔÚÔÚWEB Ó¦ÓÃÖÐʹÓ÷ÖÒ³¼¼ÊõÔ½À´Ô½ÆÕ±éÁË£¬ÆäÖÐÀûÓÃÊý¾Ý¿â²éѯ·ÖÒ³ÊÇÒ»ÖÖЧÂʱȽϸߵķ½·¨£¬
ÏÂÃæÁгöÁËOracle, DB2 ¼° MySQL ·ÖÒ³²éѯд·¨¡£
Ò»£ºOracle
select * from (select rownum,name from table where rownum <=endIndex )
where rownum > startIndex
¶þ£ºDB2
DB2·ÖÒ³²éѯ
SELECT * ......
=================================================================================
Oracle RAC ²úÆ·¸ÅÊö
Oracle Real Application Server£¬ÕæÕýÓ¦Óü¯Èº£¬¼ò³ÆOracle RAC £¬ÊÇOracleµÄ²¢Ðм¯Èº£¬Î»ÓÚ²»Í¬·þÎñÆ÷ϵͳµÄOracleʵÀýͬʱ·ÃÎÊͬһ¸öOracleÊý¾Ý¿â£¬½ÚµãÖ®¼äͨ¹ý˽ÓÐÍøÂç½øÐÐͨÐÅ£¬ËùÓеĿØÖÆÎļþ¡¢Áª»úÈÕÖ ......