Oracle:pl/sql Òì³£´¦Àí[ת]
pl/sql ÌṩÁËÇ¿´ó¶øÁé»îµÄÊÖ¶ÎÀ´²¶×½ºÍ´¦Àí³ÌÐò²úÉúµÄÒì³££¬´Ó¶øÊ¹ oracle µÄÓû§Ô¶ÀëһЩÁîÈË·³ÄÕµÄ bug ¡£
pl/sql Òì³£´¦ÀíµÄ¸ÅÄîºÍÊõÓï
ÔÚ oracle ÖÐËùÓеĴíÎó¶¼±»ÈÏΪÊDz»Ó¦¸Ã·¢ÉúµÄÒì³£¡£Ò»¸öÒì³£¿ÉÄÜÊÇÒÔÏ 3 ÖÖÇé¿öµÄÒ»ÖÖ£º
u ÓÉϵͳ²úÉúµÄ´íÎ󣨓 out of memory ”»ò“ duplicate value in index ”£©
u Óû§ÐÐΪµ¼ÖµĴíÎó
u Ó¦ÓóÌÐò¸øÓû§µÄÒ»¸ö¾¯¸æ
pl/sql ÓÃÒ»ÖÖÒì³£¾ä±úµÄ½á¹¹À´²¶×½ºÍÏìÓ¦´íÎó¡£ÕýÊÇÓÐÁËÒì³£¾ä±úµÄ´æÔÚ£¬ÎÒÃÇÄܷܺ½±ãµÄ·ÖÀëÒì³£´¦Àí´úÂëÓë¿ÉÖ´ÐдúÂë¡£ÓëÏßÐԵĴúÂëÏà±È£¬ÎªÁË´¦ÀíÒì³££¬Òì³£¾ä±úÌṩÁËÒ»ÖÖÀàËÆÊ¼þÇý¶¯µÄģʽ£»»»¾ä»°Ëµ£¬¾ÍÊDz»¹ÜÒ»ÖÖÌØ¶¨µÄ´íÎóÔÚºÎʱºÎµØ·¢Éú£¬Ëü¶¼½«±»Í¬Ò»¸ö´úÂë´¦Àí¡£
µ±Ò»¸ö´íÎó³öÏÖºó£¬ÎÞÂÛËüÊÇϵͳ»¹ÊdzÌÐò²úÉúµÄ£¬¶¼½«µ¼ÖÂÒ»¸öÒì³£¡£Ö®ºó£¬¿ÉÖ´ÐгÌÐò±»Öжϣ¬¿ØÖÆÈ¨×ªÒƸøÒì³£´¦Àí´úÂë¡£´¦ÀíÍêÒì³£ºó£¬³ÌÐò½«²»»á»Øµ½ÏÈǰ±»ÖжϵÄλÖã¬Ïà·´µÄ£¬¿ØÖÆÈ¨±»½»¸øÁ˵±Ç°³ÌÐòµÄÍâΧģ¿é£¨¿ÉÄÜÊdzÌÐò£¬Ò²¿ÉÄÜÊÇϵͳ£©¡£
procedure jimmy
is
new_value varchar(35)
begin
|--------new_value:=old_value || ‘-new’;
| if new_value like ‘like%’
| then
| …..
| end if;
| exception
|----- à when value_error
then
…..
end;
ÒòΪ old_value ÊÇÒ»¸öδ±»¶¨
Ïà¹ØÎĵµ£º
SQLÔÚ½¨Á¢Óë·þÎñÆ÷µÄÁ¬½Óʱ³ö´íµÄ½â¾ö·½
ÔÚ½¨Á¢Óë·þÎñÆ÷µÄÁ¬½Óʱ³ö´í¡£ÔÚÁ¬½Óµ½ SQL Server 2005 ʱ£¬ÔÚĬÈϵÄÉèÖÃÏ SQL Server ²»ÔÊÐí½øÐÐÔ¶³ÌÁ¬½Ó¿ÉÄܻᵼÖ´Ëʧ°Ü¡£ (provider: ÃüÃû¹ÜµÀÌṩ³ÌÐò, error: 40 - ÎÞ·¨´ò¿ªµ½ SQL Server µÄÁ¬½Ó)
¸Õ¸Õ°²×°µÄÊý¾Ý¿âϵͳ£¬°´ÕÕÄ ......
--²é¿´CPUÀûÓÃÂÊ
-- CREATE PROCEDURE sp_GetTop10_CPU () AS
BEGIN
SET NOCOUNT ON
DECLARE @cinterval char(8)
DECLARE @interval int
SET @cinterval = '00:00:10'
CREATE TABLE #thread
(
RUN INT NOT NULL,
SPI ......
create table #a
(
a int identity(1,1) primary key,
b int default(0) not null,
c nvarchar(20)
)
insert into #a(c)
select 'a' union all
select 'b' union all
select 'c' union all
select 'd' union all
select 'e'
select * from #a
alter table #a drop constraint DF__#a_____________b__12 ......
×ö¸ö¾ØÕ󣬯äʵ¾ÍÊǸö¶þάÊý×飬¹Ø¼üÊÇÒª´ÓÊý¾Ý¿âÀïµ÷ЩÊý¾Ý£¬sqlÓï¾ä²»ÊìÁ·£¬¾Í±ßѧ±ßÓã¬Í¬²½µØ¼ÇЩ±Ê¼Ç£¬·½±ã²éÔÄ
¹ØÓÚdistinctºÍorder by ·¢Á˸öÌû×Ó£¨µÚÒ»´ÎŶ£©
Ê×Ìû£º
ÓõÄÊÇoracleµÄÊý¾Ý¿â
Ä¿µÄÊÇÏëÑ¡³öΨһµÄuserid£¨ÔÓÐÖØ¸´Öµ£©,²¢ÇÒ°´ÕÕfileposÅÅÐò£¨ÔfileposÊÇ1£¬2£¬3.¡£¡£²»Öظ´µÄÐòºÅ£©
......
ORDER BY ÅÅÐò
ASC ÉýÐò(ĬÈÏ)
DESC ½µÐò
select * from s_emp order by dept_id , salary desc
²¿ÃźÅÉýÐò£¬¹¤×ʽµÐò
¹Ø¼ü×ÖdistinctÒ²»á´¥·¢ÅÅÐò²Ù×÷¡£
select * from employee order by 1; //°´µÚÒ»×Ö¶ÎÅÅÐò
NULL±»ÈÏΪÎÞÇî´ó¡£order by ¿ÉÒÔ¸ú±ðÃû¡£
select table_name ......