OCPÈÏÖ¤¿¼ÊÔÖ¸ÄÏ£¨10£©£ºÊ¹ÓÃPL/SQL½øÐÐOracle±à³Ì
1¡¢±à³ÌÓïÑÔÓëOracleÊý¾Ý¿â
1.1¡¢´æ´¢µÄÓëÄäÃûµÄPL/SQL³ÌÐò¿é
Óë´æ´¢µÄPL/SQL³ÌÐò¿éÏà±È£¬ÄäÃûµÄPL/SQL³ÌÐò¿éЧÂʽϵͣ¬´ËÍâÓÉÓÚ¿ÉÄÜÔÚ¶ą̀»úÆ÷Öй«²¼Ô´´úÂ룬»¹»áÒý·¢¹ÜÀíÎÊÌâ¡£
1.2¡¢PL/SQL¶ÔÏó
PL/SQL¶ÔÏó¾ßÓÐÏÂÁÐ5ÖÖÀàÐÍ£º
¹ý³Ì
º¯Êý
³ÌÐò°ü
³ÌÐò°üÖ÷Ìå
´¥·¢Æ÷
2¡¢¹ý³Ì¡¢º¯ÊýÒÔ¼°³ÌÐò°ü
2.1¡¢¹ý³ÌÓ뺯Êý
¹ý³Ì£¨Procedure£©ÊÇÒ»¸öÖ´ÐÐijЩ¶¯×÷µÄ´úÂë¿é¡£ÒªÔËÐÐÒ»¸ö¹ý³Ì£¬¼È¿ÉÒÔÔÚPL/SQL³ÌÐò¿éÄÚ²¿µ÷ÓÃÕâ¸ö¹ý³Ì£¬Ò²¿ÉÒÔʹÓý»»¥Ê½µÄEXECUTEÃüÁî¡£
º¯Êý£¨Function£©Óë¹ý³ÌµÄ¸ÅÄîÏàËÆ£¬µ«²¢²»¾ßÓÐOUTÐÍʵ²Î£¬²¢ÇÒÎÞ·¨Ê¹ÓÃEXECUTEÃüÁîÀ´µ÷Ó᣺¯ÊýÓ¦µ±Í¨¹ýRETURN·µ»ØÒ»¸öÖµ¡£
Èç¹ûʹÓõÄÊÇCREATEÃüÁî¶ø²»ÊÇCREATE OR REPLACEÃüÁÄÇôÔÚÖ¸¶¨¶ÔÏóÒÑ´æÔÚµÄÇé¿öϱØÐëÏÈɾ³ýÕâ¸ö¶ÔÏó¡£
º¯Êý£º
?[Copy to clipboard]View Code PLSQL
SQL> create or replace function odd_even(v1 number)
2 return varchar2
3 as
4 begin
5 if
6 mod(v1,2) = 0
7 then
8 return 'even';
9 else
10 return 'odd';
11 end if;
12 end odd_even;
13 /
Function created.
SQL> select odd_even(8) from dual;
ODD_EVEN(8)
-------------------------------------------------------------------
even
SQL> select odd_even(9) from dual;
ODD_EVEN(9)
-------------------------------------------------------------------
odd
¹ý³Ì£º
?[Copy to clipboard]View Code PLSQL
SQL> conn system/oracle
Connected.
SQL> create table integers (
2 C1 number(2),
3 C2 varchar2(5));
Table created.
SQL> create or replace procedure ins_ints(v1 in number)
2 as
3 begin
4 for i in 1..v1 loop
5 insert into integers values (i, odd_even(i));
6 end loop;
7 end ins_ints;
8 /
Procedure created.
SQL> execute ins_ints(5);
PL/SQL procedure successfully completed.
SQL> select * from integers;
C1 C2
---------- -----
1 odd
2 even
3 odd
4 even
5 odd
2.2¡¢³ÌÐò°ü
³ÌÐò°ü£¨Package£©Óɹ淶ºÍÖ÷ÌåÁ½¸ö¶ÔÏó×é³É¡£
ʹÓÃCREATE PACKAGEÃü
Ïà¹ØÎĵµ£º
#ÐÂÔöÒ»¸ö×ֶΣ¬Ä¬ÈÏֵΪ0£¬·Ç¿Õ£¬×Ô¶¯Ôö³¤£¬Ö÷¼ü
alter table tabelname add new_field_name field_type default 0 not null auto_increment ,add primary key (new_field_name);
#Ôö¼ÓÒ»¸öÐÂ×Ö¶Î
alter table tableName add new_field_name field_type;
alter table tableNam ......
1. ¸´ÖƱí½á¹¹
Sql´úÂë
1. select * into B from A where 1=0;
select * into B from A where 1=0;
2.¸´ÖƱí¼Ç¼ ¸´ÖÆÄ³Ð©×Ö¶Î
Sql´úÂë
1. insert into B(a, b, c) select d, e, f from A;
insert into B(a, b, c) select d, e, f from A;
¸´Ö ......
Ò»¡¢»ù´¡
1¡¢ËµÃ÷£º´´½¨Êý¾Ý¿â
CREATE DATABASE database-name
2¡¢ËµÃ÷£ºÉ¾³ýÊý¾Ý¿â
drop database dbname
3¡¢ËµÃ÷£º±¸·Ýsql server
--- ´´½¨ ±¸·ÝÊý¾ÝµÄ device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- ¿ªÊ¼ ±¸·Ý
BACKUP DATABASE pubs TO testBac ......
SQLÌṩÁËËÄÖÖÄ£ºýÆ¥Å䷽ʽ
1£¬%£º±íʾÈÎÒâ0¸ö»ò¶à¸ö×Ö·û¡£¿ÉÆ¥ÅäÈÎÒâÀàÐͺͳ¤¶ÈµÄ×Ö·û£¬ÓÐЩÇé¿öÏÂÈôÊÇÖÐÎÄ£¬ÇëÔËÓÃÁ½¸ö°Ù·ÖºÅ£¨%%£©±íʾ¡£
±ÈÈç SELECT * from [user] WHERE u_name LIKE '%Èý%'
½«»á°Ñu_nameΪ“ÕÅÈý”£¬“ÕÅèÈý”¡¢“Èý½Å蔣¬“ÌÆÈý²Ø”µÈµÈÓГÈý& ......
SQL ServerÖÐÁª»ú´ÔÊé
SQL Server timestamp Êý¾ÝÀàÐÍÓëʱ¼äºÍÈÕÆÚÎ޹ء£SQL Server timestamp ÊǶþ½øÖÆÊý×Ö£¬Ëü±íÃ÷Êý¾Ý¿âÖÐÊý¾ÝÐ޸ķ¢ÉúµÄÏà¶Ô˳Ðò¡£ÊµÏÖ timestamp Êý¾ÝÀàÐÍ×î³õÊÇΪÁËÖ§³Ö SQL Server »Ö¸´Ëã·¨¡£Ã¿´ÎÐÞ¸Äҳʱ£¬¶¼»áʹÓõ±Ç°µÄ @@DBTS Öµ¶ÔÆä×öÒ»´Î±ê¼Ç£¬È»ºó @@D ......