2009-09-11 5 views
11

Oracle SQL Developerを使用すると、SQLスクリプトを記述することなくフィールド値を直接テーブルに更新できます。しかし、それはあなたがフィールドのnull値を設定することはできません?生成されます更新スクリプトは以下の通りです: UPDATE "TABLE" SET field_required = nullをWHERE ROWID = 'AAAnnZAAFAAAGMfAAC' AND ORA_ROWSCN = '14465324'oracle sql開発ツールを使用してテーブルのフィールドにNULL値を設定する方法はありますか?

テーブル内のフィールドにnull値を設定する方法任意のアイデア更新文を書くことなく?

答えて

8

どのバージョンをお使いですか?私は今1.5.4を持っており、それは完全に動作します。値をクリックして削除を押し、コミットします。

+1

現在、私は1.5.4を使用し、今日の朝は最新のアップデートをインストールしました。今それは動作します。私のバージョンは1.5.4ビルドMAIN-5940 ありがとう – Cshah

0

ツールによっては、NULL値を入力するのに<ctrl+0>を使用しています。

+1

That didnt work – Cshah

0

tools -> preferences -> Database -> advanced settingsには、デフォルトのNULL列の表示をリセットできる設定があります。それを空白にすると、おそらくあなたの問題が解決されます。

+0

いいえ。これは、ディスプレイを空白に切り替えるだけです。それは解決しません。以下は、意図したヌル更新を実行するときに実行されるスクリプトです。 "DEPARTMENT" SET NAME = 'cgh' WHERE ROWID = 'AAAoA8AAFAAAHk2AAA' ORA_ROWSCN = '14471109' UPDATE "DEPARTMENT" SET NAME = WHERE ROWID = 'AAAoA8AAFAAAHk2AAA' AND ORA_ROWSCN = '14471114'テーブル「DEPARTMENT」の変更を保存する1つのエラー:行1:無効な列インデックス:getValidColumnIndex。フィールド内のすべての文字を削除してデータをコミットしようとすると、上記のエラーが表示される – Cshah

3

データタブでの編集を意味しますか? 「空の」文字列を挿入するだけで、oracleはnullに等しくなります。

ツールで(ヌル)に "として表示NULL値" を設定 - >環境設定 - >データベース - >高度な設定

create table ff (v VARCHAR2(1)); 

INSERT INTO FF VALUES ('1'); 

選択テーブルと選択したデータ]タブ。

これは、ログにこの文を生成した値1をクリックして、1 のコミットを削除今

V 
= 
1 

ダブルを示しています

syntacticly有効なSQL文が、データ]タブではありません
UPDATE "OSIVOLG"."FF" SET V = WHERE ROWID = 'AAA+zcAAFAAF9rgAAA' AND ORA_ROWSCN = '77536476584' 

今すぐ表示されます。

V 
====== 
(null) 
+0

まだ動作しません。私は、新しいdbが作成されたときにプリインストールされているヘルプテーブルから値を削除しようとしました。 "HELP" SET INFO = WHERE ROWID = 'AAACfmAABAAAG66AAL' AND ORA_ROWSCN = '169734' テーブル「SYSTEM」の変更を保存するエラーが1つあります。"HELP": 行12:無効な列インデックス:getValidColumnIndex – Cshah

+0

このテーブルを更新する特権を持っていないか、データベースが閉鎖されています。通常のユーザースキーマの表を更新してみてください。 DB内のテーブルを問題なく更新しましたが、DBA権限を持つユーザーです。 – DCookie

+1

これは何らかのバグのようです:http://forums.oracle.com/forums/thread.jspa?messageID=3314613&tstart=0 –

12

SQL Developer 3.0を使用しています。私にとっては、まずnullに設定したいセルを強調表示することです。バックスペースを2回押し、セルから移動します(または、編集モードから抜け出すために必要な作業を行います)。最初のバックスペースはセルを編集モードにし、既存の値をクリアします。第2のバックスペースは、「ヌ​​ル」値が設定される場所です(これは視覚的に明らかです)。変更をコミットすると、null値がリフレッシュされたデータに表示されるようになりました。

+0

SQL Developer 4.0では、ヌル値を設定することはセルの内容を削除するのと同じくらい簡単であることも確認できます。私が知る限り、9.0R2と同じバージョンはそれと互換性があり、ここからダウンロードできます。http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html – chuck

+0

Brilliant 、 ありがとうございました。 – thonnor

0

マウスで関連する列を選択します(選択したままにするにはCTRLを押してください)。次にSHIFT + DELを押します。これは私のために働いた

関連する問題