DUAL表
dual是由具有一列和一行的oracle數據庫(所有者SYS)擁有的表。
要評估1 + 1的添加,請執行以下SQl SELECT語句:
SELECT 1 + 1 FROM dual;
快速找出oracle如何評估你對內置函數length()的使用。
SELECT length(NULL) FROM dual;
SELECT nvl(length(NULL), 0) FROM DUAL;
雙表允許你在代碼中沒有任何巨大承諾的情況下進行攻擊。
實例2
以下代碼顯示了用于插入日期的出版物的DML。
INSERT INTO author_books (
id, author_id, title, publish_date ) -- w ww.jav a 2s . c o m
VALUES ( 30, 200, 'Database', to_date('20030101', 'YYYYMMDD') ); INSERT INTO author_books (
id, author_id, title, publish_date )
VALUES ( 40, 200, 'Learn SQL', to_date('20000101', 'YYYYMMDD') ); INSERT INTO author_books (
id, author_id, title, publish_date )
VALUES ( 50, 200, 'Learn HTML', to_date('20020101', 'YYYYMMDD') ); INSERT INTO author_books (
id, author_id, title, publish_date )
VALUES ( 60, 200, 'Learn Database', to_date('20050101', 'YYYYMMDD') ); COMMIT;
下面的代碼顯示了插入達文出版物的DML。
INSERT INTO author_books ( id, author_id, title, publish_date )
SELECT 70, 300, 'Learn SQL', to_date('20000101', 'YYYYMMDD')
FROM dual -- www . j ava 2 s . c o m
where not exists ( SELECT 1 FROM author_books x WHERE x.author_id = '300' AND x.title = 'Learn SQL' ); INSERT INTO author_books ( id, author_id, title, publish_date )
SELECT 80, 300, 'Learn HTML', to_date('20020101', 'YYYYMMDD')
FROM dual
where not exists ( SELECT 1 FROM author_books x WHERE x.author_id = '300' AND x.title = 'Learn HTML' ); COMMIT;
execute SYS.DBMS_STATS.gather_table_stats(USER, 'AUTHOR_PUBLICATIONS');
?CSDN:程序猿 寄語:
1、作為一個真正的程序員,首先應該尊重編程,熱愛你所寫下的程序,他是你的伙伴,而不是工具。
2、程序員可以讓步,卻不可以退縮,可以羞澀,卻不可以軟弱,總之,程序員必須是勇敢的。
3、編程是一種單調的生活,因此程序員比普通人需要更多的關懷,更多的友情。
4、程序不是年輕的專利,但是,他屬于年輕。
5、沒有情調,不懂浪漫,也許這是程序員的一面,但擁有樸實無華的愛是他們的另一面。
6、一個好漢三個幫,程序員同樣如此。
7、一個100行的代碼調試都可能會讓程序員遇到很多挫折,所以,面對挫折,我們永遠不能低頭。
8、調試完一個動態連接函數,固然值得興奮,但真正的成功遠還在無數個函數之后。
9、程序是我的生命,但我相信愛她甚過愛我的生命。
10、信念和目標,必須永遠洋溢在程序員內心。
11、就算我們站在群山之顛,也別忘記雄鷹依舊能從我們頭頂飛過。驕傲是比用JAVA進行底層開發更可笑的東西。