How deep do you go in your software? Do you make it at least 1 click deep? I’m talking about right-clicking with your mouse. Software folks are often accused of hiding things on context menus, but you have to remember that software is engineered and developed by folks that are comfortable with computers – and we just assume everyone knows to ‘right click everywhere.’

You may have noticed something was amiss when you first used the object tree in the Connections pane.

Wait, you're hiding stuff from me?!?

The ‘Tables’ tree node has a ‘(Filtered)’ notation next to it. Out of the box we are choosing not to show you any tables that are in the Recycle Bin. Quick side note: when you drop a table, Oracle just renames it with a funny system name (BIN$…), and then it eventually ages out. So we figure you don’t want to see those and we filter the object list accordingly. But, if you right-click, you can configure the filter to your liking!

Maybe you don’t want to see tables for materialized views or tables belonging to a particular project or application.

Apply Filter

Right-click on the ‘Tables’ node and choose ‘Apply Filter.’ You can create one or more filtering clauses to limit what’s shown. For this example we’re talking about tables, but you can apply this to any object type on the tree. You can also apply a filter at the connection level, so if you had a bunch of tables, views, jobs, sequences that all started with ‘BOB_’, those can be easily hidden in one quick swipe.

We don’t have a lot of buttons in SQL Developer in order to keep the interface clean and uncluttered as possible. However, this is one of those cases where we have a button. You’ll notice there’s a funnel-looking button on the Connections panel toolbar. You can click on that too.

Here’s an example of a table filter I’m using to hide stuff I don’t want to see including some support tables for APEX and SQL Developer’s Unit Testing feature.

Please don't show me this stuff.

I routinely work with customers that have thousands of tables. How often do you think they interface with each of those tables every day? Never, right? So if you’re going to be neck-deep in a project for a few days, take a second to create a filter to hide the objects you don’t need to be bothered with at that moment. Or, you could use software like most sheeple and just run it like it’s out-of-the-box.

Author

I'm a Distinguished Product Manager at Oracle. My mission is to help you and your company be more efficient with our database tools.

17 Comments

  1. In the table filter, is there a way to escape wildcard characters? I’m working with a very large DB and tables are named with an prefix code, underscore, then the rest of the name. So if I only want to see tables starting with code ‘MQ’, filtering on MQ_% doesn’t work because of the underscore and I get all the MQE_, MQL_, MQR_ , etc. tables. I’ve tried all the escape tricks I can find and nothing seems to help.

  2. Hi Jeff,

    I have many connections on the left pane when I launch SQL Developer.

    I have configured the object filter settings in one connection but I’d like this filter to be applied to the rest of other connections instead of applying filters manually.

    Is there a way to do this easily & quickly?

    Thanks!

  3. Hi,
    I use this feature often to filter which tables to list in the TreeView. I have found that whenI upgraded to Version 4.1.1 any changes to my filter set-up are not saved if I close SQLDeveloper. When I open SQLDeveloper again only the filters saved With previous Versions of SQlDeveloper are loaded. Very annoying… Have you experienced this? What is the weork-around?

    • Hi Jeff,

      I definitely like your posts and of course the SQLD !

      Having used the filters quite a lot (we have too many tables in our business too 🙂 ), I turned to this page to find a solution to read (in xml or) import filters from a previous 4.0 Version installation to the 4.1.0 Version, because I the filters were not taken over when I installed the new version.

      However, I can report that V. 4.1.0 64bit works in that sense that it remembers the filters from session to session (4.1.0.19.07 on Java 1.8.0_45, running on Win7 64).

  4. Hi ! facing a weird issue actually . When i query a view from my system I am not getting any data but my colleague gets data in the same instance . The connection details are all same so i don’t understand where the problem is .. Please help .. I am using Oracle SQL developer .

    • are your versions of SQL Developer and your NLS Parameters (as defined in the preference) the same?

  5. Is it possible to hide categories that I never use completely (such as XML Schemas, XML DB Repository etc.) from the tree?

    This one would be very helpful to unclutter the tree in addition to filtering objects/users if certain features of the database such as APEX are never used.

    Thanks.

    • Mustafa Nural

      Is there any place that you could point to me where I can find how? I digged through sqldeveloper preferences and tried the filters from the context menu but nevertheless failed.

  6. I’m using Oracle SQL Developer (OSD) to watch DB2 schemas, but the “Apply Filter” options are disabled on all objects.
    Which could be the reason? Is because of DB2?
    I’ve traied with two versions of OSD.
    Thanks.

    • Correct. DB2 connectivity is provided to help with DB2 -> Oracle Database migration projects only.

Reply To Cole Cancel Reply