Topic: Table Dictionary

hi everyone,

i saw this "table dictionary" what is the use of this i'm just curious.

thanks in advance.

Post's attachments

Attachment icon table dictionary.JPG 32.64 kb, 86 downloads since 2022-05-19 

-lemodizon

Re: Table Dictionary

Hello lemodizon

Here is the definition given by Embarcadero (from which MVD was created (RAD XE3)):

The Data Dictionary


When you use the BDE to access your data, your application has access to the Data Dictionary. The Data Dictionary provides a customizable storage area, independent of your applications, where you can create extended field attribute sets that describe the content and appearance of data.

For example, if you frequently develop financial applications, you may create a number of specialized field attribute sets describing different display formats for currency. When you create datasets for your application at design time, rather than using the Object Inspector to set the currency fields in each dataset by hand, you can associate those fields with an extended field attribute set in the data dictionary. Using the data dictionary ensures a consistent data appearance within and across the applications you create.

In a client/server environment, the Data Dictionary can reside on a remote server for additional sharing of information.

To learn how to create extended field attribute sets from the Fields editor at design time, and how to associate them with fields throughout the datasets in your application, see Creating attribute sets for field components. To learn more about creating a data dictionary and extended field attributes with the SQL and Database Explorers, see their respective online help files.

A programming interface to the Data Dictionary is available in the drintf unit (located in the lib directory). This interface supplies the following methods:

This is supposed to improve searches in tables related to each other.
Honestly, in my MVD apps, I never check this option and I've never noticed any issues when querying among related tables.

Moreover, it is true that my applications developed with MVD do not use a remote server.

JB

Re: Table Dictionary

hi lemondizon,


jean has detailed it nicely here, but I found this thread with a simpler explanation for ya too.

-joshuA

"Energy and persistence conquer all things."

Re: Table Dictionary

Hi JB and joshuA,

Thanks for the information.

-lemodizon

Re: Table Dictionary

That dictionary also fixed my problem here http://myvisualdatabase.com/forum/viewtopic.php?id=7339 by setting department as dictionary

brian

Re: Table Dictionary

Yes, in some cases setting as a dictionary helps solve the join order problem.


Dmitry wrote on the forum: "MVD in rare cases use this option for internal algorithms
to automatically link tables correctly when you use a button with a Search action for example,
but from the point of view of databases, a dictionary table is just a convention"


But unfortunately this happens with a small number of tables in the join.
With a large number of join tables, the result of setting the dictionary becomes a game.
What tables to mark?
With unpredictable and negative results.

Re: Table Dictionary

Hi again lemodizon, and all


I appreciate your mentioning that book (in your Table Grid thread) because it prompted me to go through it (which I have yet to do).  Which leads me to the reason I'm even commenting again on this one.


For me, Page 89 clearly described the purpose for setting a table as a dictionary.  The example there is better than any other explanation that I have yet seen on the forums even (view the attachment).  Aside from what is going on "under the hood", because there has been much detail given for that in other threads.

-joshuA

Post's attachments

Attachment icon pg89.png 54.37 kb, 74 downloads since 2022-05-27 

"Energy and persistence conquer all things."

Re: Table Dictionary

I wouldn't rely on this setting. At the most unexpected moment, she can let us down. If you find that the Table View Builder fails to produce the desired result, use SQL . This gives you full control over the result and allows you to optimize database queries. Yes, it's more complicated and requires learning the query language, but it's worth it.

Визуальное программирование: блог и телеграм-канал.

Re: Table Dictionary

Thanks for mentioning that.  I will keep it off unless I experience issues otherwise.  It seems like it is most useful when using reports.

-joshuA

"Energy and persistence conquer all things."