The end goal for many users of Oracle SQL Developer Data Modeler is a a nicely formatted, easy to read diagram. Diagrams are composed of two primary components:

  1. Tables or Entities
  2. Relationships

Today’s post is all about how to manage the display of the relationships.

How can I move the lines around?

You might not like the default anchor point positions of the relationship lines. You can easily move these, but there’s a slight ‘trick.’ Believe it or not, I have seen several modeling tools where this is nigh impossible.

Select the relationship. Move your cursor over the anchor point. When the cursor switches to ‘cross-hairs’ mode, then you can drag the anchor point to your new location. Maybe a video would help?

Click, hover, click, and drag.
Click, hover, click, and drag.

But I want to move the entire line at once!
Ok, then ctrl-click on the line, this will add an intermediary point, or an elbow.

Select the line, then ctrl-click, and drag. This adds an 'elbow.'
Select the line, then ctrl-click, and drag. This adds an ‘elbow.’

How can I display the relationship names in the diagram?

It’s a ‘Show’ option. The relationship names are referred to as ‘labels’ in SQL Developer. So right click in the model, go to ‘Show’ and toggle on ‘Labels.’

Default, No Labels

No labels, what you'll see 'out of the box.'
No labels, what you’ll see ‘out of the box.’

With Labels

The relationships are now 'labeled.'
The relationships are now ‘labeled.’

How do I change the Font and Color of the Labels and Lines

The default font face and color for the labels and the line width and colors for relationships are configured in the preferences.

Tools - Preferences - Diagram - Format
Tools – Preferences – Diagram – Format

So very quickly I can make something very, very ugly.

I'm not much of an artist, unless you count sandwiches as a medium.
I’m not much of an artist, unless you count sandwiches as a medium.

You can manually override the display format of any relationship. Just right-click on the line and select ‘Format.’ You can then change the line width and/or color. If you right-click on the label, you can do the same ‘Format’ and change the text color and font settings.

Update: November 11, 2014

Since this post was written, a new version has been released. You can now find the design properties and formatting stuff discussed above in teh following location.

If you're in version 4.0 or higher, look here...
If you’re in version 4.0 or higher, look here…
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.

42 Comments

  1. I am developing a complex logical data model using Oracle Sql Developer Data Modeler. When it grows , it is almost impossible to avoid intersecting relationship line. do Modeler have any function when at intersecting point it will show as jumper , the way it was shown in Electrical circuit design. please let me know ASAP if possible.

    • No, but you can ‘add an elbow’ on you’re relationship line so you can ‘bend’ around other objects and prevent collisions.

      Remember, as your diagram grows, it’s good to use SubViews. Then instead of 10,000 objects, you can say have only the 20 that matter for a given set of your model in view.

    • I am already using Elbow and subview but still it is growing . simple example is Country(reference data) is referred by lot of entity from different subject area(transaction). so relationship is needed. What are the option available apart from what you have suggested.

    • That’s all I have to offer at the moment, but surely that is enough to prevent most intersecting lines?

  2. Satyabrat Sahoo Reply

    Can I display label like “tabel1.col1 =table2.col2” on relationship arrow instead of constraint name ?

  3. I’m using the data modeller to model a new design (the tables exist in a sandbox schema but with no data). Currently the data modeller arbritarily decides whether a relationship is one to one or one to many, and I can’t see a way to reformat the arrows to correspond to my intentions. Is there a way to do this?

  4. Need to re-position relationship labels.
    In my organization, relationship labels are required for the logical model, & they are required to read like a sentence between the parent & the child AND from the child to the parent.
    EX:
    [Subscriber] may define site preferences in [Favorites] — parent to child
    [Favorites] may be the site preferences defined by [Subscriber] — child to parent

    In other data modelling tools I’ve used, re-positioning these labels freely about is as easy as selecting the text ‘box’ & moving it to where you want it. I’m rather new at using Oracle SQL Data Modeler, so I’ve not discovered all the neat tricks & treats.

    Query: How does one re-position relationship labels to ensure readability & minimize overlap with other diagram objects?

    Thank you.

    • Yes, sir. Already tried that. I can send a screen print of the situation if I know an e-mail address.
      The only way to get the entire label to display readably is to spread the tables so far apart they look more like a married couple whose relationship is on the fritz rather than the in-love snuggly bunnies I want them to appear to be.

    • Yes, sir. I think I got it right.
      Please see http://imgur.com/a/3R0B7 — RelationshipLabelsOverlappingWithOtherDiagramObjects_20170802.

      Thank you very much for your assistance.

      Please let me know if you can’t see the image.

    • you want them close together, but not overlapping, what if you didn’t include such verbose labels? Less text in other words. And if you move the elbow point around on the relationship line, you can manage to get the labels to move a good bit.

    • I understand there’s some manuevering I can accomplish by fiddling with the relationship line, but not enough. Besides, adding enough elbows to almost get it readable makes it look like something the man with with the crooked house might’ve designed.
      Less text would be great, but, as mentioned originally, my organization requires relationship labels to be human-understandable purpose of the relationship.
      If I understand correctly, then, Oracle SQL Developer Data Modeler is NOT CAPABLE of independently managing the placement of relationship labels. Is this an accurate statement?
      Any way I can get this submitted as an enhancement request?
      Much obliged for your time & effort.

    • You understand correctly, and it’s most definitely ‘on the list.’ You’re not the only user asking for this.

    • Outstanding, sir!
      A glimmer of light in an otherwise pretty frustrating day . . .
      Any idea of the enhancement release . . . ?

      Have a brilliant evening!

  5. I have reverse-engineered a relational model of our data warehouse, by faking primary keys that do not exist and finding foreign keys. I have not reverse-engineered a logical model and do not have a multidimensional model.

    Is there any way to have my fact tables display with a different color than my dimension tables in the Relational Model?

    john3

  6. Catorcio63 Reply

    ‘Name on Target’ and ‘Name on Source’ are used to specify the roles of the relation. I hope you agree that it makes sense to specify the name of the relation in the diagram. Think about a stakeholder watching a printed logical model diagram, he spots a relation and and he wants to read in the glossary the desciption of that relation. But he can’t, because he does not know the name of that relation.

  7. I am on OSX El Capitan using SQL Data Modeler 4.1.2, and I cannot select the relationship lines in my relational model. If I randomly right click around my diagram, sometimes it will select a relationship like, but that is rare. Is this a Mac thing? Is it a bug? What am I doing wrong?

    Any help is appreciated – thanks!

    • we THINK it’s a bug, but we can’t reproduce it internally

      setup a non-Retina display/monitor, and it should start working again

      we’re trying to get it going though so you don’t have to choose between Retina or the Modeler

    • Thanks, Jeff. Unfortunately I work in a completely mobile fashion with no external monitor available. Any other suggestions?

    • I tried every available resolution with no luck.

    • Okay, I tried every version back to 4.0.0 down to the lowest resolution with no luck. Hopefully you guys are able to find the issue soon. This is by far my favorite modeling tool, and I’ve used quite a few of them over the years!

    • can you give me the EXACT specs of your machine?

      hardware, OS, screen resolution, version of java

      we have a few devs in-house with retina macs and they have no problems with the relationship lines 🙁

    • MacBook Pro (Retina, 15-inch, Late 2013)
      2.3 GHz Intel Core i7
      16 GB 1600 MHz DDR3
      NVIDIA GeForce GT 750M 2048 MB
      OSX El Capitan 10.11.1 (15B42)
      Java 1.8.0_66

  8. Piotr Rzepecki Reply

    Hello, Jeff.

    I am currently using 4.1.2 version of Data Modeller and it would be nice to have features like:
    – additional Format options for Notes, Diagram like alignment (horizontal, verical), so we would be able to have notes, which are centered for example.

    Next, when I ‘Engineer a logical diagram’ with ‘As Subview’ selected diagram under ‘Logical Model’ looks fine, but when I use ‘Show Diagram’ under Subviews some of the connections between Entities do not look like I have created them.

    Best Regards.
    Piotr

  9. Chris Peters Reply

    Hi Jeff,

    Great site! I only recently started using Data Modeler, but your site has quickly become my #1 resource.

    I was able to generate a Relational Model of a schema, but the relationship lines don’t show up. In the Navigator, the tables are laid out in rows with no obvious relationships shown. Based on what I’ve seen in tutorials, these should appear automatically, correct?

    Having combed through forums for “missing relationship lines”, etc. and tweaked the “view” and “show” options, can you shed some light on what might be happening?

    Thanks,
    Chris

  10. Ivan Halaška Reply

    Hi,
    I use Oracle DataModeler embedded into Oracle SQLDeveloper.
    I am a teacher and I must to demonstrate the work with the modeler in front of students by presenter. Therefore, I need to increase default font sizes and icons sizes in UI.
    – default font size of UI I changed in configuration file ide.properties according to your advice
    – default Font Size for entity types and their attributes I could also change according to your advice
    – default size of icons on the toolbar I am not able to increase, talk to me please how to do it
    – default font size for the relationship attributes I am not able to increase, talk to me please how to do it

    Ivan

    • does the zoom in not help?

      also, if you are on Windows, then as a teacher I think you must have and use ZoomIt, which I talk about here. I use it in ALL of my talks

  11. Ivan Halaška Reply

    Hi,
    I am using Oracle Data modeler included into Oracle SQLDeveloper, version 4.1.1.19, buid MAIN-19.59.
    I am teacher and I must show the work with DataModeler to students by presenter.
    I was able to increase UI interface font size in configuration file ide.properties.
    How can I increase icons in status line above drawing area?

    Ivan

  12. Hi Jeff,
    I used Oracle SQL Developer Version 3.2.20.10. But I could not found the Data Modeler menu. How come?
    Please give me a reason.
    Thanks.

    • Is it disabled? Make sure it’s not unchecked in the Extensions list.

      Or upgrade. V3.2 is really old.

  13. Dave Blaine Reply

    Examples do not seem to match UI of current version of Oracle SQL Developer Data Modeler. Most recent downloadable is 4.0.3 Build 843.

    “Format” is not an option in the Tools | Preferences …
    When selected is any of: Designs, Logical Model, Entities, Relations, or any item.

    • Catorcio63

      I started using the data modeler integrated in SQL Developer Version 4.1.3.20.
      About your “Update: November 11, 2014”, the UI screen appears as you described in this post, but clicking on the icon ( the one with the “Modify” tooltip) in the Format dialog has no effect, nothing happens.
      Furthermore, relation names are shown only in a Relational Model diagram, but not in the Logical Model diagram. I find that weird.

      It becomes frustrating, after dedicating time to learn using this software, to see that it cannot be used to complete a modeling effort.

    • Catorcio63

      As I wrote, one of the things I tried was to show the names of the relationships (between entities) in the diagrams.
      Right-clicking an empty area in the diagram, then choosing Show ► Labels, as suggested in your post, works in relational diagrams but not in the logical diagram.

    • In a logical model, it’s not expected to see that, instead you would open the relationship properties and set ‘Name on Target’ and ‘Name on Source.’

Write A Comment