2011-08-22 53 views
21

我是Oracle DB的新手,我正在使用Oracle SQL Developer(Ver 3.0.02)來查詢數據庫。 我想明確地設置一列爲空?將列值明確設置爲空SQL Developer

如何在SQL Developer GUI中執行此操作?

以前在MSSQL中,單擊CTRL + 0將顯式將該值設置爲null。 Oracle SQL Developer如何? 謝謝

+0

我不確定我是否理解這個問題。你是否試圖將列添加到總是NULL的結果集?更新表中的列使其始終爲NULL?在特定列中允許NULL值?還有別的嗎? –

+0

@Justin我想顯式地將列設置爲null。說我點擊一列,然後將其值明確設置爲空。我實際上正在爲此尋找一個快捷鍵。 –

+0

我還不確定我的理解。您是否打算更新表中的列,以便每行中的值爲NULL?修改表中的約束以允許列中的NULL值?還有別的嗎? –

回答

19

您必須明確地編寫SQL DML。 即

UPDATE <table> 
    SET <column> = NULL; 

一旦它完成了,你需要提交您的更新

commit; 

如果你只是想設置某些記錄爲NULL的UPDATE語句使用WHERE子句。

由於你原來的問題很模糊,我希望這涵蓋你想要的。

2

很顯然,誰沒有使用SQL Server企業管理器不明白的問題(即賈斯汀洞)最多的人。

當我想知道同樣的事情時,我遇到了這篇文章。

使用SQL Server時,當您通過MS SQL Server GUI工具編輯數據時,可以使用KEYBOARD SHORTCUT插入NULL而不是僅僅具有EMPTY CELL,因爲它們不是一回事。一個空單元格可以有一個空格,而不是NULL,即使它在技術上是空的。不同之處在於,當您有意將一個NULL放入單元格而不是空格或將其清空並且不使用SQL語句來執行時。

所以,問題是真的是,我如何將一個NULL值放入單元格的INSTEAD空間來清空單元格?

我認爲答案是,Oracle開發人員GUI的工作方式,正如Laniel在上面所指出的那樣,而且應該標記爲這個問題的答案。

當您按照op描述的方式清空單元格時,Oracle Developer似乎默認爲NULL。

此外,您可以強制Oracle開發人員通過在細胞持有空改變背景顏色的顏色,以進一步證明改變你的空細胞的樣子:

工具 - >首選項 - >高級 - >顯示null進行背景色

甚至VALUE它表明,當它爲空:

工具 - >首選項 - >高級 - >顯示空值

希望幫助你轉換。

3

使用Shift + Del。

更多信息: 當你用一個值填充一個字段,並且你改變了你的決定並且你想讓它爲空時,Shift + Del組合鍵將字段設置爲null。這是有用的,我驚訝於其他答案,提供奇怪的解決方案。