Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

OracleºÍMSSQLÖÐÑ­»·µÄʹÓÃ


 ORACLE
CREATE OR REPLACE FUNCTION SETSTATE(OLDVALUE VARCHAR2, POS NUMBER, SVALUE VARCHAR2)
RETURN VARCHAR2
IS
RETURN_VALUE VARCHAR2 (20);
LEN NUMBER(8);
I NUMBER(8);
TEMP_VALUE VARCHAR2(1);
BEGIN
     LEN := LENGTH(OLDVALUE);
     IF POS > LEN THEN
        RETURN 'Ö¸¶¨µÄË÷Òý´óÓÚ×Ö·û´®µÄ³¤¶È£¡';
     END IF;
     I := 0;
     RETURN_VALUE := '';
     FOR I IN 1..LEN LOOP
         TEMP_VALUE := SUBSTR(OLDVALUE, I, 1);
         IF I = POS THEN
            TEMP_VALUE := SVALUE;
         END IF;
         RETURN_VALUE := RETURN_VALUE || TEMP_VALUE;
     END LOOP;
     RETURN RETURN_VALUE;
END;
MSSQL
IF EXISTS(SELECT * from SYSOBJECTS WHERE NAME = 'SETSTATE')
 DROP FUNCTION SETSTATE
GO
CREATE FUNCTION SETSTATE(@OLDVALUE NVARCHAR(20), @POS INT, @SVALUE NVARCHAR(1))
RETURNS NVARCHAR(20)
AS
BEGIN
 DECLARE @RETURN_VALUE NVARCHAR(20),
 @LENGTH INT,
 @I INT,
 @TEMP_VALUE NVARCHAR(1);
 SET @LENGTH = LEN(@OLDVALUE);
 SET @I = 1;
 SET @RETURN_VALUE = '';
 IF(@POS > @LENGTH)
  SET @RETURN_VALUE = @OLDVALUE;
 ELSE
  BEGIN
   WHILE(@I <= @LENGTH)
   BEGIN
    SET @TEMP_VALUE = SUBSTRING(@OLDVALUE, @I, 1);
    IF (@I = @POS)
     SET @TEMP_VALUE = @SVALUE;
    SET @RETURN_VALUE = @RETURN_VALUE + @TEMP_VALUE;
    SET @I = @I + 1;
   END
  END
 RETURN @RETURN_VALUE;
END
GO


Ïà¹ØÎĵµ£º

jdbcÁ¬½ÓOracle

      ËäȻѧϰJavaºÜ¾ÃÁË£¬×Ô¼ºÒ²Á¬½Ó¹ýһЩÊý¾Ý¿â£¬±ÈÈçmysqlÖ®ÀàµÄ£¬Èç½ñÄØ£¬Ò²Ñ§Ï°ÁËÒ»¶Îʱ¼äµÄOracle£¬È»¶øÄØ£¬½ñÌìÊÇÎÒµÚÒ»´ÎÁ¬½ÓOracle£¬ºÙºÙ£¬Ó¦¸Ã»¹²»ËãÌ«³Ù°É¡£
    ½ñÌìÄØ£¬Óе㱿׾£¬´ó¼ÒĪЦ£¡
    ÎÒÕâÊÇÒ»¸ö²éѯÀý×Ó
    Ê×ÏÈ£¬Ô ......

ѧϰ¡¶Oracle 9i10g±à³ÌÒÕÊõ¡·µÄ±Ê¼Ç (Îå)

 1.¾¡¿ÉÄܵØÊ¹Óð󶨱äÁ¿ ²»Óÿª¹ØCURSOR_SHARING=FORCE 
Èç¹ûÄãÔ¸Ò⣬Õâ¸öÌØÐÔ»áʵÏÖÒ»¸ö×Ô¶¯°ó¶¨Æ÷£¨auto-binder£©¡£
Èç¹ûÓÐÒ»¸ö²éѯ±àдΪSELECT * from EMP WHERE EMPNO = 1234£¬×Ô¶¯°ó¶¨Æ÷»áÇÄÎÞÉùÏ¢µØ°ÑËü¸Äд³É
SELECT * from EMP WHERE EMPNO = :x¡£ÕâȷʵÄܶ¯Ì¬µØ´ó´ó¼õÉÙÓ²½âÎöÊý£¬²¢¼õÉÙÇ°ÃæÌÖÂÛµ ......

oracleÖÐdual±íµÄÓ÷¨

dualÊÇÒ»¸öÐéÄâ±í£¬ÓÃÀ´¹¹³ÉselectµÄÓï·¨¹æÔò£¬oracle±£Ö¤dualÀïÃæÓÀÔ¶Ö»ÓÐÒ»Ìõ¼Ç¼¡£ÎÒÃÇ¿ÉÒÔÓÃËüÀ´×öºÜ¶àÊÂÇ飬ÈçÏ£º
1¡¢²é¿´µ±Ç°Óû§£¬¿ÉÒÔÔÚ SQL PlusÖÐÖ´ÐÐÏÂÃæÓï¾ä select user from dual;
2¡¢ÓÃÀ´µ÷ÓÃϵͳº¯Êý
    select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;--»ñµÃµ±Ç°ÏµÍ³Ê±¼ ......

ORACLEº¯Êý

 °Ñ×Ô¼ºËѼ¯µÄ×ÊÁÏÌù³öÀ´£¬Ñ§Ï°¹¤×÷·½±ãÕ¼¡£
SQLÖеĵ¥¼Ç¼º¯Êý
1.ASCII
·µ»ØÓëÖ¸¶¨µÄ×Ö·û¶ÔÓ¦µÄÊ®½øÖÆÊý;
SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
2.CHR
¸ø³öÕûÊý,·µ»Ø¶ÔÓ¦µÄ×Ö·û;
SQ ......

ºÍÍøÓÑ̽ÌÖ ÈçºÎѧϰOracle

http://www.inthirties.com/thread-757-1-1.html
ºÜÈÙÐÒ£¬±»ÑûÇëΪCSDNѧϰ´ó±¾ÓªÀïµÄOracleÀÏʦ¡£ÓиöÍøÓÑ·¢ÏûÏ¢¹ýÀ´£¬Ò»Æð̽ÌÖÈçºÎѧϰOracle£¬Ò»ÏÂÊǻظ´£¬ºÍ´ó¼ÒÒ»Æð̽ÌÖ¡£
 Ê×ÏÈ£¬ÒªÃ÷È·ÄãµÄ·½ÏòºÍÄ¿±ê¡£
¶ÔÓÚOracleÀ´Ëµ£¬Õâ¸öÌåϵÊDZȽÏÅÓ´óµÄ£¬ËùÒÔÃ÷È·Ò»¸öÄ¿±êºÍÄãµÄ·½ÏòÊÇÔÚѧϰǰÐèҪ˼¿¼µÄÎÊÌâ¡£ ¹ÜÀí£¬ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ