![]() | ![]() Products ![]() ![]() ![]() ![]() |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB SQL » View Thread |
Messages 1 to 8 of 8 total |
![]() |
Fri, Aug 29 2008 11:31 AM | Permanent Link |
"Jianfei Xu" | Hi, I would like to rebuild all tables locally using Create Table and Create
Index. One table with couple of fields indexed. I find each time create index takes time. Is there any better way to create index for table rather than create index one by one. We will rebuild hundreds of local tables, it takes long time. Thanks |
Fri, Aug 29 2008 1:29 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. ![]() | Jianfei,
<< Hi, I would like to rebuild all tables locally using Create Table and Create Index. One table with couple of fields indexed. I find each time create index takes time. Is there any better way to create index for table rather than create index one by one. >> No, you have to create indexes using the CREATE INDEX statement. The reason that it may take a while is that EDB must flush the database catalog to disk for each DDL statement in order to ensure the ability to recover the database catalog from a write failure while the DDL statement executes. -- Tim Young Elevate Software www.elevatesoft.com |
Thu, Sep 4 2008 11:07 PM | Permanent Link |
"Jianfei Xu" | I have 250 tables to rebuild locally, It takes 30+ minutes. most time is
creation of index. Is there any way I can create all index at once, rather than create one by one. Jianfei "Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote in message news:37C0413C-BB65-4F7B-AD72-739E8004ECBE@news.elevatesoft.com... > Jianfei, > > << Hi, I would like to rebuild all tables locally using Create Table and > Create Index. One table with couple of fields indexed. I find each time > create index takes time. Is there any better way to create index for table > rather than create index one by one. >> > > No, you have to create indexes using the CREATE INDEX statement. The > reason that it may take a while is that EDB must flush the database > catalog to disk for each DDL statement in order to ensure the ability to > recover the database catalog from a write failure while the DDL statement > executes. > > -- > Tim Young > Elevate Software > www.elevatesoft.com > |
Fri, Sep 5 2008 11:23 AM | Permanent Link |
"Jianfei Xu" | Hi, Tim
As a suggestion, Include create index statement inside of create table statement, this way, we can create all index in one shot. Jianfei "Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote in message news:37C0413C-BB65-4F7B-AD72-739E8004ECBE@news.elevatesoft.com... > Jianfei, > > << Hi, I would like to rebuild all tables locally using Create Table and > Create Index. One table with couple of fields indexed. I find each time > create index takes time. Is there any better way to create index for table > rather than create index one by one. >> > > No, you have to create indexes using the CREATE INDEX statement. The > reason that it may take a while is that EDB must flush the database > catalog to disk for each DDL statement in order to ensure the ability to > recover the database catalog from a write failure while the DDL statement > executes. > > -- > Tim Young > Elevate Software > www.elevatesoft.com > |
Fri, Sep 5 2008 1:09 PM | Permanent Link |
Roy Lambert NLH Associates ![]() | Jianfei
What are you actually doing? Is it migrating a table from DBISAM to ElevateDB or something totally different? Roy Lambert [Team Elevate] |
Fri, Sep 5 2008 2:09 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. ![]() | Jianfei,
<< I have 250 tables to rebuild locally, It takes 30+ minutes. most time is creation of index. >> How often does this need to be executed ? << Is there any way I can create all index at once, rather than create one by one. >> No, it's a one-by-one process for now. We have an enhancement for 2.x on our list to allow for DDL transactions or to allow for databases to be opened exclusively, and that may help you when it becomes available (please don't ask me for a date). -- Tim Young Elevate Software www.elevatesoft.com |
Fri, Sep 5 2008 7:14 PM | Permanent Link |
"Jianfei Xu" | It is automatically synchronization between server and local database.
I add new field to table in the server side, then I need application automatically rebuild local database accordingly. or when I install local application, the application will rebuild local EDB totally based on server db structure. Server side is MS SQL. Jianfei "Roy Lambert" <roy.lambert@skynet.co.uk> wrote in message news:0B0D9F0E-99ED-496B-9018-E0D451815F95@news.elevatesoft.com... > Jianfei > > > What are you actually doing? Is it migrating a table from DBISAM to > ElevateDB or something totally different? > > Roy Lambert [Team Elevate] > |
Sat, Sep 6 2008 9:41 AM | Permanent Link |
Roy Lambert NLH Associates ![]() | Jianfei
When adding fields hopefully that won't mean reindexing everything, and quite possibly nothing. When installing I can see 30 min being a bit annoying but the only thing I can suggest is, if all 250 tables aren't required immediately and simultaneously, to set up a background thread to do the indexing whilst the app is underway. Roy Lambert [Team Elevate] |
This web page was last updated on Saturday, June 22, 2024 at 05:51 PM | Privacy Policy![]() © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? ![]() |