OracleÖеİ󶨱äÁ¿
°ó¶¨±äÁ¿¾ÍÊÇÄܹ»Ìæ´úSQLÓï¾äÖг£Á¿µÄÌæ´ú±äÁ¿
×÷Óãº
°ó¶¨±äÁ¿Ö»ÊÇÆðµ½Õ¼Î»µÄ×÷Óã¬Í¬ÃûµÄ°ó¶¨±äÁ¿²¢²»Òâζ×ÅÔÚËüÃÇÊÇͬÑùµÄ£¬ÔÚ´«µÝʱҪ¿¼ÂǵÄÊÇ´«µÝµÄÖµÓë°ó¶¨±äÁ¿³öÏÖ˳ÐòµÄ¶Ô룬¶ø²»Êǰ󶨱ä Á¿µÄÃû³Æ¡£
°ó¶¨±äÁ¿ÊÇÔÚͨ³£Çé¿öÏÂÄÜÌáÉýЧÂÊ£¬·ÇÕý³£µÄÇé¿öÈçÏ£º
ÔÚ×Ö¶Î(°üÀ¨×ֶμ¯)½¨ÓÐË÷Òý£¬ÇÒ×Ö¶Î(¼¯)µÄ¼¯µÄÊÆ·Ç³£´ó£¨Ò²¾ÍÊÇÓиöÖµÔÚ×Ö¶ÎÖгöÏֵıÈÀýÌØ±ðµÄ´ó£©µÄÇé¿öÏ£¬Ê¹Óð󶨱äÁ¿¿ÉÄܻᵼÖ²éѯ¼Æ»®´íÎó£¬Òò¶ø»áʹ²éѯЧÂʷdz£µÍ¡£ÕâÖÖÇé¿ö×îºÃ²»ÒªÊ¹Óð󶨱äÁ¿¡£
oracle ÖУ¬¶ÔÓÚÒ»¸öÌá½»µÄsqlÓï¾ä,´æÔÚÁ½ÖÖ¿ÉÑ¡µÄ½âÎö¹ý³Ì, Ò»ÖÖ½Ð×öÓ²½âÎö,Ò»ÖÖ½Ð×öÈí½âÎö.
ÔÚ¹²Ïí³ØÖдæÔÚµÄÊÇÈí½âÎö£¬¼´£ºÀàËÆÓÚPL/sql
Èí½âÎöºÍ°ó¶¨±äÁ¿£ºselect * from dept where id= :d_id;
oracle»áÊ×Ïȼì²éһϹ²Ïí»º³å³Ø£¨shared pool£©ÀïÓÐûÓÐÓëÖ®ÍêÈ«ÏàͬµÄÓï¾ä£¬Èç¹ûÓеϰֻÐëÖ´ÐÐÈí·ÖÎö¼´¿É£¬·ñÔò¾ÍµÃ½øÐÐÓ²·ÖÎö¡£
¶øÎ¨Ò»Ê¹µÃoracle Äܹ»Öظ´ÀûÓÃÖ´Ðмƻ®µÄ·½·¨¾ÍÊDzÉÓð󶨱äÁ¿¡£°ó¶¨±äÁ¿µÄʵÖʾÍÊÇÓÃÓÚÌæ´úsqlÓï¾äÖеij£Á¿µÄÌæ´ú±äÁ¿¡£°ó¶¨±äÁ¿Äܹ»Ê¹µÃÿ´ÎÌá½»µÄsqlÓï¾ä¶¼ÍêȫһÑù¡£
µ«ÊDz¢²»ÊÇÈκÎÇé¿ö϶¼ÐèҪʹÓð󶨱äÁ¿£¬ÏÂÃæÊÇÁ½ÖÖÀýÍâÇé¿ö£º
1£®¶ÔÓÚ¸ôÏ൱һ¶Îʱ¼ä²ÅÖ´ÐÐÒ»´ÎµÄSQLÓï¾ä£¬ÕâÊÇÀûÓð󶨱äÁ¿µÄºÃ´¦»á±»²»ÄÜÓÐЧÀûÓÃÓÅ»¯Æ÷¶øµÖÏû
2£®Êý¾Ý²Ö¿âµÄÇé¿öÏ¡£
°ó¶¨±äÁ¿²»Äܵ±×÷ǶÈëµÄ×Ö·û´®À´Ê¹Óã¬Ö»Äܵ±×÷Óï¾äÖеıäÁ¿À´Óᣲ»ÄÜÓð󶨱äÁ¿À´´úÌæ±íÃû¡¢¹ý³ÌÃû¡¢×Ö¶ÎÃûµÈ.
ÆÕͨsqlÓï¾ä£º
SELECT fname, lname, pcode from cust WHERE id = 674;
SELECT fname, lname, pcode from cust WHERE id = 234;
SELECT fname, lname, pcode from cust WHERE id = 332;
º¬°ó¶¨±äÁ¿µÄsql Óï¾ä£º
SELECT fname, lname, pcode from cust WHERE id = :cust_no;
Sql*plus ÖÐʹÓð󶨱äÁ¿£º
SQL> set timing on
SQL> variable x number;
SQL> exec :x :=8
PL/SQL ¹ý³ÌÒѳɹ¦Íê³É¡£
ÒÑÓÃʱ¼ä: 00: 00: 00.03
SQL> select * from A;
ID
----------
3
5
ÒÑÓÃʱ¼ä: 00: 00: 00.06
SQL> insert into A values(:x);
ÒÑ´´½¨ 1 ÐС£
ÒÑÓÃʱ¼ä: 00: 00: 00.01
SQL> select * f
Ïà¹ØÎĵµ£º
ºÜ¶àÅóÓÑÔÚJava¿ª·¢ÖУ¬Ê¹ÓÃOracleÊý¾Ý¿âµÄʱºò£¬¾³£»áÅöµ½ÓÐORA-01000: maximum open cursors exceeded.µÄ´íÎó¡£
ʵ¼ÊÉÏ£¬Õâ¸ö´íÎóµÄÔÒò£¬Ö÷Òª»¹ÊÇ´úÂëÎÊÌâÒýÆðµÄ¡£
ora-01000: maximum open cursors exceeded.
±íʾÒѾ´ïµ½Ò»¸ö½ø³Ì´ò¿ªµÄ×î´óÓαêÊý¡£
ÕâÑùµÄ´íÎóºÜÈÝÒ׳öÏÖÔÚJava´úÂëÖеÄÖ÷ÒªÔÒòÊÇ£ºJava´úÂëÔÚÖ´ ......
package com.deng.oracle;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestOracle {
public static void main(String[] args) {
try {
Class.forName("oracle.jdbc.driver.OracleDriv ......
Mysql£¬SqlServer£¬OracleÖ÷¼ü×Ô¶¯Ôö³¤µÄÉèÖÃ
1¡¢°ÑÖ÷¼ü¶¨ÒåΪ×Ô¶¯Ôö³¤±êʶ·ûÀàÐÍ
ÔÚmysqlÖУ¬Èç¹û°Ñ±íµÄÖ÷¼üÉèΪauto_incrementÀàÐÍ£¬Êý¾Ý¿â¾Í»á×Ô¶¯ÎªÖ÷¼ü¸³Öµ¡£ÀýÈ磺
create table customers(id int auto_increment primary key not null, name varchar(15));
insert into customers(name) values("name1"),("nam ......
Oracle µÄrownum ÔÀíºÍʹÓÃ
ÔÚOracle ÖУ¬Òª°´Ìض¨Ìõ¼þ²éѯǰNÌõ¼Ç¼£¬Óøörownum ¾Í¸ã¶¨ÁË¡£
select * from emp where rownum <= 5
¶øÇÒÊéÉÏÒ²¸æ½ë£¬²»ÄܶÔrownum ÓÃ">"£¬ÕâÒ²¾ÍÒâζ×Å£¬Èç¹ûÄãÏëÓÃ
select * from emp where rownum > 5
ÔòÊÇʧ°ÜµÄ¡£ÒªÖªµÀΪʲô»áʧ°Ü£¬ÔòÐèÒªÁ˽ârownum ±³ºóµÄ»úÖÆ£ ......
µ¥±í²åÈëÒÔinsert into¿ªÍ·,²»ÄÜÓÐthen intoÓï¾ä.
¶à±í²åÈëÒÔinsert first/all ¿ªÍ·,¿ÉÒÔÓÐthen intoÓï¾ä
ÔÚOracle²Ù×÷¹ý³ÌÖо³£»áÓöµ½Í¬Ê±Ïò¶à¸ö²»Í¬µÄ±í²åÈëÊý¾Ý£¬´ËʱÓøÃÓï¾ä¾Í·Ç³£ºÏÊÊ¡£
All±íʾ·Ç¶Ì·ÔËË㣬¼´Âú×ãÁ˵ÚÒ»¸öÌõ¼þÒ²µÃÏòÏÂÖ´Ðв鿴ÊÇ·ñÂú×ãÆäËüÌõ¼þ£¬¶øFirstÊǶÌ·ÔËËãÕÒµ½ºÏÊÊÌõ¼þ¾Í²»ÏòϽøÐС£
I ......