ORACLE NULLÏê½â
ÎÊ£ºÊ²Ã´ÊÇNULL£¿
´ð£ºÔÚÎÒÃDz»ÖªµÀ¾ßÌåÓÐʲôÊý¾ÝµÄʱºò£¬Ò²¼´Î´Öª£¬¿ÉÒÔÓÃNULL£¬ÎÒÃdzÆËüΪ¿Õ£¬ORACLEÖУ¬º¬ÓпÕÖµµÄ±íÁ㤶ÈΪÁã¡£
ORACLEÔÊÐíÈκÎÒ»ÖÖÊý¾ÝÀàÐ͵Ä×Ö¶ÎΪ¿Õ£¬³ýÁËÒÔÏÂÁ½ÖÖÇé¿ö£º
1¡¢Ö÷¼ü×ֶΣ¨primary key£©£¬
2¡¢¶¨ÒåʱÒѾ¼ÓÁËNOT NULLÏÞÖÆÌõ¼þµÄ×Ö¶Î
˵Ã÷£º
1¡¢µÈ¼ÛÓÚûÓÐÈκÎÖµ¡¢ÊÇδ֪Êý¡£
2¡¢NULLÓë0¡¢¿Õ×Ö·û´®¡¢¿Õ¸ñ¶¼²»Í¬¡£
3¡¢¶Ô¿ÕÖµ×ö¼Ó¡¢¼õ¡¢³Ë¡¢³ýµÈÔËËã²Ù×÷£¬½á¹ûÈÔΪ¿Õ¡£
4¡¢NULLµÄ´¦ÀíʹÓÃNVLº¯Êý¡£
5¡¢±È½ÏʱʹÓùؼü×ÖÓÓis null”ºÍ“is not null”¡£
6¡¢¿ÕÖµ²»Äܱ»Ë÷Òý£¬ËùÒÔ²éѯʱÓÐЩ·ûºÏÌõ¼þµÄÊý¾Ý¿ÉÄܲ鲻³öÀ´£¬count(*)ÖУ¬ÓÃnvl(ÁÐÃû,0)´¦ÀíºóÔٲ顣
7¡¢ÅÅÐòʱ±ÈÆäËûÊý¾Ý¶¼´ó£¨Ë÷ÒýĬÈÏÊǽµÐòÅÅÁУ¬Ð¡→´ó£©£¬ËùÒÔNULLÖµ×ÜÊÇÅÅÔÚ×îºó¡£
ʹÓ÷½·¨£º
SQL> select 1 from dual where null=null;
ûÓв鵽¼Ç¼
SQL> select 1 from dual where null='';
ûÓв鵽¼Ç¼
SQL> select 1 from dual where ''='';
ûÓв鵽¼Ç¼
SQL> select 1 from dual where null is null;
1
---------
1
SQL> select 1 from dual where nvl(null,0)=nvl(null,0);
1
---------
1
¶Ô¿ÕÖµ×ö¼Ó¡¢¼õ¡¢³Ë¡¢³ýµÈÔËËã²Ù×÷£¬½á¹ûÈÔΪ¿Õ¡£
SQL> select 1+null from dual;
SQL> select 1-null from dual;
SQL> select 1*null from dual;
SQL> select 1/null from dual;
ÒÔÉÏËÄÌõÓï¾ä¾ù²éѯµ½Ò»¸ö¼Ç¼.
×¢£ºÕâ¸ö¼Ç¼¾ÍÊÇSQLÓï¾äÖеÄÄǸönull
ÉèÖÃijЩÁÐΪ¿ÕÖµ
update table1 set ÁÐ1=NULL where ÁÐ1 is not null;
ÏÖÓÐÒ»¸öÉÌÆ·ÏúÊÛ±ísale£¬±í½á¹¹Îª£º
month¡¡ char(6)¡¡ --Ô·Ý
sellnumber(10,2)¡¡--ÔÂÏúÊÛ½ð¶î
create table sale (month char(6),sell number);
insert into sale values('200001',1000);
insert into sale values('200002',1100);
insert into sale values('200003',1200);
insert into sale values('200004',1300);
insert into sale values('200005',1400);
insert into sale values('200006',1500);
insert into sale values('200007',1600);
insert into sale values('200101',1100);
insert into sale v
Ïà¹ØÎĵµ£º
±¾Îijö×Ô¡¶Íø¹ÜÔ±ÊÀ½ç¡·20002ÄêµÚ8ÆÚ“¹ÊÕÏÕï¶Ï”À¸Ä¿
Ó²¼þ»·¾³£º SUN250·þÎñÆ÷£¬1G CPU , 512M Ram , 18G SCSIÓ²ÅÌ
ϵͳ»·¾³£º SUN Solaris 2.7
·þÎñ»·¾³£º Oracle 8.1.6
ÖÜÎåÎÒ·¢ÏÖOracleÊý¾Ý¿âÔÚÖ´ÐгÌÐòʱµÄÏìÓ¦ÌØ±ðÂý£¬Õû¸öÊý¾Ý¿â·þÎñËùÔÚµÄSUN Solaris 2.7ϵͳҲÊÇÕâÑù£¬ÎÞÂÛÔËÐÐʲô³ÌÐò¶¼±ÈÍù³£ÂýÁ˺ ......
Ò»¸ö¼òµ¥µÄoracle·ÖÒ³´æ´¢¹ý³ÌµÄʵÏֺ͵÷Óá£ÔÚ¿´ÁËÖÚ¶àµÄ·ÖÒ³´æ´¢¹ý³ÌÒÔºó·¢ÏÖ¶¼ÊÇÕë¶ÔsqlserverµÄ£¬¶øÃ»ÓÐoracleµÄ£¬Òò´ËÏëдһ¸ö¹ØÓÚoracleµÄ´æ´¢¹ý³Ì£¬ÒòΪÎÒÓõ½µÄÊý¾Ý¿âÊÇoracle¡£
Oracle·ÖÒ³´æ´¢¹ý³ÌµÄ˼·ÓÚsqlserverµÄ˼·ÊÇÒ»ÑùµÄ£¬µ«ÊÇÎÒÕâÀï×öÁ˵ã¸Ä¶¯£¬ÔÚÒòΪOracleµÄÓï·¨ºÍ¹æÔòµÄ²»Í¬ËùÒÔ£¬Oracle·ÖÒ³´æ´¢ ......
INSTR·½·¨µÄ¸ñʽΪ
INSTR(Ô´×Ö·û´®, Ä¿±ê×Ö·û´®, ÆðʼλÖÃ, Æ¥ÅäÐòºÅ)
ÀýÈ磺INSTR('CORPORATE FLOOR','OR', 3, 2)ÖУ¬Ô´×Ö·û´®Îª'CORPORATE FLOOR', Ä¿±ê×Ö·û´®Îª'OR'£¬ÆðʼλÖÃΪ3£¬È¡µÚ2¸öÆ¥ÅäÏîµÄλÖá£
ĬÈϲéÕÒ˳ÐòΪ´Ó×óµ½ÓÒ¡£µ±ÆðʼλÖÃΪ¸ºÊýµÄʱºò£¬´ÓÓұ߿ªÊ¼²éÕÒ¡£
ËùÒÔSELECT INSTR('CORPORATE FLOOR' ......
OracleÃüÁîÈ«¼¯
µÚÒ»Õ£ºÈÕÖ¾¹ÜÀí
µÚ¶þÕ£º±í¿Õ¼ä¹ÜÀí
µÚÈýÕ£º±í
µÚËÄÕ£ºË÷Òý
µÚÎåÕ£ºÔ¼Êø
µÚÁùÕ£ºLOADÊý¾Ý
µÚÆßÕ£ºreorganizing data
µÚ°ËÕ£º managing password security and resources
µÚ¾ÅÕ£ºManaging users
µÚʮգºmanaging privileges
µÚʮһÕ£º manager role
µÚÊ®¶þÕÂ: BACKUP and RECOV ......
ʹÓÃCursor:
--²âÊÔһϣ¬½ñÌì²ÅÉêÇëʹÓÃitpub.net µÄblog
declare
RoomID Room.RoomID%Type;
RoomName Room.RoomName%Type;
cursor crRoom is
select RoomID,RoomName
from Room;
begin
open crRoom;loop;
fetch crRoom into RoomID,RoomName;
exit when crRoom%notFound;
end loop;
close crRoom;
end;
& ......