作者fantasyj (如夢似幻)
看板Database
標題Re: [問題] 關於九九乘法的小變形..想不出來..
時間Sun Dec 5 12:20:55 2010
在下以自己的方法玩了一下,有玩出原PO想要的效果......
DECLARE
V_OUT VARCHAR2(100);
BEGIN
FOR A IN 1 .. 9 LOOP
FOR B IN 1 .. 9 LOOP
IF B >= A THEN
V_OUT := V_OUT || TO_CHAR(B) || '*' || TO_CHAR(A) || '=' ||
LPAD(TO_CHAR(B * A), 2, '0') || ' ';
END IF;
END LOOP;
IF A <> 1 THEN
V_OUT := LPAD(V_OUT, 63, ' ');
END IF;
DBMS_OUTPUT.PUT_LINE(V_OUT);
V_OUT := NULL;
END LOOP;
END;
補充說明:
玩Database時,請要特別注意Date Type的問題,尤其是數值(Number)與文字(Char),
最容易被開發人員忽略,因為多半在Clinet端的開發程式會有自動轉換的功能,所以
在開發的過程不會發生異常,但是如果丟上DB就可能掛了,這是在下的經驗談....
所以這也是在下為什麼在上面會有 TO_CHAR 這個轉換函數的使用,希望對您有幫助
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.117.123.70
推 shinmeteor:謝謝:D 12/05 18:32
推 cspy:請問這是 plsql嗎..怎麼看起來有些地方不太像 @@ 12/06 10:29
→ fantasyj:這當然是Oracle的PL/SQL阿 囧 12/06 10:32
推 cspy:原來是Oracle plsql ^^" 12/06 10:37