2012-01-05 26 views
2

我有一個用於從MySQL遷移到Oracle 11g的遷移腳本(使用工具創建)。我們擁有的表名像USER,AUDIT,RESOURCE等,它們是Oracle中的保留字,因此,當我運行腳本時,它會在名稱(USER_,AUDIT_等)的下劃線處創建這些表。 現在我發現如果我用引號括起表名,那麼我們可以按原樣使用這些詞。在Oracle 11g中使用保留字作爲表名

什麼是處理外鍵約束定義的方式,我們是否也在表名周圍應用引號?像引用「資源」(ID)一樣。

怎麼也沒有_由於附加器(我們可以運行該腳本之前設置這個地方的選擇。我使用的Oracle SQL Developer)

+1

你最後一句話應該是一個單獨的問題。 – Sathya 2012-01-05 06:41:11

+0

如果可能的話,我會建議不要使用保留字。它會不必要地使事情複雜化和混淆。如果你擔心改變事情不要忘記,你必須改變所有的代碼來包含引號。 – Ben 2012-01-05 08:57:16

回答

2

什麼是處理外鍵約束定義的方式,我們是否也在表名附近引用了引號?像引用「資源」(ID)一樣。

是的,所有對錶格的引用必須通過雙引號完成。