Geodatabase ArcSDE/Oracle : PK and FK

I'm coming from ERD diagrams world and planned there geodatabase. Then I was about to create Oracle tables via ArcCatalog
(I had some non-graphic classes that I wanted to append to to the feature classes).
I was very surprised when I saw no choice to determine PK and FK I had designed for my tables?
Do you know it is necessary to have normal tables created via ArcCatalog or I can do it via e.g. Erwin?
(the existing feature class has an attribute that is FK, i.e. PK of one of my normal table and this normal ables is then related to other etc.)
The applications are going to use Map(Arc?) Objects to work with the geodatabase. Will they be able to access my normal tables if I create them via Erwin? (I investigated a bit and saw that all registered tables are put in one SDE system table).
But when I define the relation, no FK were established between the tables ?! Is this normal for hte geodatabase?
Who is Participating?
geotigerConnect With a Mentor Commented:

SDE obeys database integrity rules and constraints in RDBMS. So whatever PK or FK you create through PL/SQL will be enforced by the database.  I worked with ESRI products a few years back and did not get chance to use ArcCatalog. I do use ERwin extensively.  You can reverse engineering your database to ERwin and create FK and PK in ERwin, then update the database with constraints only. Be careful if you already have data in your database. You may not be able to create all the PKs and FKs if the existing data does not conform to the new data integrity.

My only experience is in Visio and you can import from a repository.  Have you tried exporting to a repository then importing this into Erwin?
matejakAuthor Commented:
What do you mean by "exporting to repository" ? I created via ArcCatalog some tables and features classes and could saw them in Oracle - yes I can do then import into Erwin as well - but there are no FK for the relationships class that I specifed.
Train for your Pen Testing Engineer Certification

Enroll today in this bundle of courses to gain experience in the logistics of pen testing, Linux fundamentals, vulnerability assessments, detecting live systems, and more! This series, valued at $3,000, is free for Premium members, Team Accounts, and Qualified Experts.

Sorry, I wasn't very clear.  I have never messed with ERD.  All of my experience is in Visio.  Here is an article showing how to get the data out of Visio with all the supported primary and foreign keys.  I am sure that Erwin probably has a way of doing the same thing.
matejakAuthor Commented:
It seems I have problems to explain my problem :-(.
The thing I do not understand is how to create classical FK in  ArcCatalog or Visio.
I want to have them as some application will access RDBMS via PL/SQL and integrity of data need to be provided via FK
I do not know whether it is possible to create FK via ArcCatalog (directly or via Visio not important).
What will happen to geoDB if I create FK directly in Oracle and that FK links two tables registered via SDE?
my mistake... ignore that comment. sorry for the intrusion. :(
Here is some more information on Data Models for you.  I am actually in the process of creating one for my department now and found this stuff very useful.

Hope it helps.
matejakAuthor Commented:
Thanks for a hint, I agree with you but on ESRI forum someone said that it is not recommended to add an additional FK in Oracle. I could not get nay more info why. Maybe performance. I still cannot understand why SDE does not create and classical RDBMS relationships - why to have then RDBMS?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.