Subject Re: Differences between dialect 1 and 3
Author newtonlistas
--- In firebird-support@yahoogroups.com, "Alan McDonald" <alan@m...>
wrote:
> > Today I convert a database that was build with dialect 1 and i create
> > a empty database with the same strcutre and same definitions of all,
> > but with dialect 3. and i realize a data pump, all is ok, without
> > problems.
> >
> >
> > But i notice something:
> >
> >
> > 1: with dialect 3 the primary keys, are created index, but now are
> > with names more friendly, by example pk_article, and are easier of use
> > with the plan. Here the only difference was that use names friendly.
> >
> >
> > 2: with the foreign keys, in dialect 1 it create index for them, with
> > names unfriendly, but create them. but with dialect 3 i can't find
them.
> > i gues donesn't exist, and if one want them, need create explicitly.
> >
> >
> > Why now aren't created the index for foreing key?, doesn't are useful
> > for speedy the joins?.
> >
> >
> > Where i can find more information about the differences between
> > version 1 and 3?
> >
> >
> > Thank's in advance
> >
>
> read all about it here
>
http://www.ibphoenix.com/main.nfs?a=ibphoenix&l=;PAGES;NAME='ibp_60_dialect'
>
> I don't know what tool you used to re-create your db, but the
creation of
> indexes is completely up to you other than the ones created for you
when you
> create primary keys and constraints. In fact - watch that you don't
create
> duplicate indexes because it could degrade performance.
> I also don't know what tool you are using to see what indexes are
actually
> present so I can't say what mistake you might be making there either.
>
> Alan


Thank's :), i was a little confused, i used the ibwebadmin and i must
correct mi first aseveration.

the names that are given to the indexes are the same used in the
definition of the constraints.


is just that ibwebadmin some times doesn't display all records that
supposedly must show; and with the database with dialect 3 it showme
some of the indexes that exist ( all the indexes of the PK's) in tab
of accesories. Meanwhile with dialect 1 doesn't do that.


When i read your post then i decide use the isql directly, and yes,
the same index are created in both dialects.


But i must say that in the ddl created by ibwebadmin and used for
create the databases with the isql doesn't exist definition of
indexes, just of the constraints for foreing keys and primary keys,
and indices are created automatically. :)

check this:

select RDB$INDEX_NAME, RDB$FOREING_KEY from RDB$INDICES;

and i'm sure that you will find index for that constraints, are
created automatically.


But thank's i was confused, and your reply make me that i check the
things more carefully.