PL/SQLʵÀý·ÖÎö
PL/SQLʵÀý·ÖÎö
µÚÎåÕÂ
1¡¢PL/SQLʵÀý·ÖÎö
1£©ÔÚ¡¾SQLPlus Worksheet¡¿ÖÐÖ±½ÓÖ´ÐÐÈçÏÂSQL´úÂëÍê³ÉÉÏÊö²Ù×÷¡£(´´½¨±í)
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
CREATE TABLE "SCOTT"."TESTTABLE" ("RECORDNUMBER" NUMBER(4) NOT NULL, "CURRENTDATE" DATE NOT NULL)
TABLESPACE "SYSTEM"
2£©ÒÔadminÓû§Éí·ÝµÇ¼¡¾SQLPlus Worksheet¡¿£¬Ö´ÐÐÏÂÁÐSQL´úÂëÍê³ÉÏòÊý¾Ý±íSYSTEM.testableÖÐÊäÈë100¸ö¼Ç¼µÄ¹¦ÄÜ¡£
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
set serveroutput on
declare
maxrecords constant int:=100;
i int:=1;
begin
for i in 1..maxrecords loop
insert into SCOTT.testtable(recordnumber,currentdate)
values(i,sysdate);
end loop;
dbms_output.put_line('³É¹¦Â¼ÈëÊý¾Ý£¡');
commit;
end;
2¡¢ÔÚ¡¾SQLPlus Worksheet¡¿ÖÐÖ´ÐÐÏÂÁÐPL/SQL³ÌÐò£¬¸Ã³ÌÐò¶¨ÒåÁËÃûΪageµÄÊý×ÖÐͱäÁ¿£¬³¤¶ÈΪ3£¬³õʼֵΪ26¡£
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
declare
age number(3):=26;
begin
commit;
end;
3¡¢ÔÚ¡¾SQLPlus Worksheet¡¿ÖÐÖ´ÐÐÏÂÁÐPL/SQL³ÌÐò£¬¸Ã³ÌÐò¶¨ÒåÁËÃûΪpiµÄÊý×ÖÐͳ£Á¿£¬³¤¶ÈΪ9¡£
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
declare
pi constant number(9):=3.1415926;
begin
commit;
end;
4¡¢¸´ºÏÊý¾ÝÀàÐͱäÁ¿
ÏÂÃæ½éÉܳ£¼ûµÄ¼¸ÖÖ¸´ºÏÊý¾ÝÀàÐͱäÁ¿µÄ¶¨Òå¡£
1). ʹÓÃ%type¶¨Òå±äÁ¿
ΪÁËÈÃPL/SQLÖбäÁ¿µÄÀàÐͺÍÊý¾Ý±íÖеÄ×ֶεÄÊý¾ÝÀàÐÍÒ»Ö£¬Oracle 9iÌṩÁË%type¶¨Òå·½·¨¡£ÕâÑùµ±Êý¾Ý±íµÄ×Ö¶ÎÀàÐÍÐ޸ĺó£¬PL/SQL³ÌÐòÖÐÏàÓ¦±äÁ¿µÄÀàÐÍÒ²×Ô¶¯Ð޸ġ£
ÔÚ¡¾SQLPlus Worksheet¡¿ÖÐÖ´ÐÐÏÂÁÐPL/SQL³ÌÐò£¬¸Ã³ÌÐò¶¨ÒåÁËÃûΪmydateµÄ±äÁ¿£¬ÆäÀàÐͺÍtempuser.testtableÊý¾Ý±íÖеÄcurrentdate×Ö¶ÎÀàÐÍÊÇÒ»Öµġ£
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
Declare
mydate SYSTEM.testtable.currentdate%type;
begin
commit;
end;
2). ¶¨Òå¼Ç¼ÀàÐͱäÁ¿
ºÜ¶à½á¹¹»¯³ÌÐòÉè¼ÆÓïÑÔ¶¼ÌṩÁ˼ǼÀàÐ͵ÄÊý¾ÝÀàÐÍ£¬ÔÚPL/SQLÖУ¬Ò²Ö§³Ö½«¶à¸ö»ù±¾Êý¾ÝÀàÐÍÀ¦°óÔÚÒ»ÆðµÄ¼Ç¼Êý¾ÝÀàÐÍ¡£
ÏÂÃæµÄ³ÌÐò´úÂ붨ÒåÁËÃûΪmyrecordµÄ¼Ç¼ÀàÐÍ£¬¸Ã¼Ç¼ÀàÐÍÓÉÕûÊýÐ͵ÄmyrecordnumberºÍÈÕÆÚÐ͵Ämycurrentdate»ù±¾ÀàÐͱäÁ¿×é³É£¬srecordÊǸÃÀàÐ͵ıäÁ
Ïà¹ØÎĵµ£º
SQLÖÐDATEADDºÍDATEDIFFµÄÓ÷¨
ÈÕÆÚ:2008-07-17 ×÷Õß:ϲ騰С¶þ 來Ô´:PHPChina
ͨ³££¬妳ÐèÒª獲µÃ當ǰÈÕÆÚºÍ計ËãһЩÆäËûµÄÈÕÆÚ£¬ÀýÈ磬妳µÄ³ÌÐò¿ÉÄÜÐèÒªÅÐ斷Ò»個ÔµĵÚÒ»Ìì»òÕß×îááÒ»Ìì¡£妳們´ó²¿·ÖÈË´ó¸Å¶¼ÖªµÀÔõ樣°ÑÈÕÆÚ進ÐзָÄê ......
SQLÖÐIN,NOT IN,EXISTS,NOT EXISTSµÄÓ÷¨ºÍ²î±ð:
IN:È·¶¨¸ø¶¨µÄÖµÊÇ·ñÓë×Ó²éѯ»òÁбíÖеÄÖµÏàÆ¥Åä¡£
IN ¹Ø¼ü×ÖʹÄúµÃÒÔÑ¡ÔñÓëÁбíÖеÄÈÎÒâÒ»¸öֵƥÅäµÄÐС£
µ±Òª»ñµÃ¾ÓסÔÚ California¡¢Indiana »ò Maryland ÖݵÄËùÓÐ×÷ÕßµÄÐÕÃûºÍÖݵÄÁбíʱ£¬¾ÍÐèÒªÏÂÁвéѯ£º
SELECT ProductID, ProductName from Northwind.dbo.Pro ......
±È½ÏÁ½¸öSQLµÄÖ´ÐÐʱ¼ä
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[PROC_SQL_COMP]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[PROC_SQL_COMP]
GO
/*--²âÊÔÁ½×éSQLµÄƽ¾ùʱ¼ä
ÀûÓÃosql.exeÀ´²âÊÔÁ½×é SQL Óï¾äµÄÖ´ÐÐʱ¼ä
²âÊԵĴ洢¹ý³ ......
Ò»°ãÓÃBCPÔÚ´¦ÀíÕâ¸öÊÂÇ飬µ«ÓÐʱҲÐèÒªÒ»Ð©ÌØÊâµÄ´¦Àí£¬ÒÔÏÂÊÇÉú³É±íÖеÄһЩÊý¾Ý£¬´øÓÐwhereÌõ¼þµÄÑ¡ÔñÉú³ÉÊý¾Ý£¬ÊÇÎÒÒ»¸öͬÊÂÐ޸ĵģ¬Ö±½ÓÄùýÀ´ÓÃÁË£º
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
Create Proc proc_insert_where (@tablename varchar(256),@where varchar(256 ......