Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 6 of 6 total |
SOS - DBISAM Query vs. ElevateDB Query - record modification... |
Fri, Oct 12 2007 8:39 AM | Permanent Link |
Durumdara | SOS HELP NEEDED!
Hi! I have to translate (change) an application from DBISAM to EDB quickly. I have a Query in the main screen, which Query is a filtered (by SQL), ordered query. From this main window you can move to Edit Window where you can Insert or Edit a new record. After that the modifications are appeared in the main Query without Reopen it: I simply copy (or insert + copy) the record data to the Query. In EDBQuery this is NOT WORKING, because it said: "Query is readonly!". I created some UpdateObject but it is still readonly... I don't understand this thing, because the local query modification (without rewriting to original table) is one of the best thing in DBISAM. But as I see in EDB this is NOT WORKING. And there is not other way to make "local cache" like in BDE (CachedUpdates)... to provide same effect. In this application the record numbers are limited to 1000-2000... I can make a solution locally if I make a temp table and I insert every records to this table - and I show this table in the Grid, not the Query. But because I wanna use this app from remote server this is not working, because the copy of all records are slow... And in need to load only the records are showed in the screen... (so I don't wanna Fetch all, only the needed recs. As I know the TEDBQuery is doing this - fetch as needed). I cannot use Table component, because Query needed for server side filtering. But I need to modify the records in the Query (to not reopen in every inserts/modifications). What is the a solution to this problem in EDB? Can I make same thing as in DBISAM? How? Thanks for your SOS help! dd |
Fri, Oct 12 2007 9:43 AM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Durumdara,
<< From this main window you can move to Edit Window where you can Insert or Edit a new record. After that the modifications are appeared in the main Query without Reopen it: I simply copy (or insert + copy) the record data to the Query. In EDBQuery this is NOT WORKING, because it said: "Query is readonly!". >> Use the CREATE TEMPORARY TABLE AS SELECT.... syntax instead. Then you can open the temporary table and work with it like a normal table. http://www.elevatesoft.com/edb1sql_create_table.htm -- Tim Young Elevate Software www.elevatesoft.com |
Fri, Oct 12 2007 9:58 AM | Permanent Link |
Durumdara | "Tim Young [Elevate Software]" <timyoung@elevatesoft.com> wrote:
Durumdara, >>> Use the CREATE TEMPORARY TABLE AS SELECT.... syntax instead. Then you can open the temporary table and work with it like a normal table. http://www.elevatesoft.com/edb1sql_create_table.htm >>> 1.) Is this not slowing down my queries? (for example: many records is in my table? Or query also collect the records to a temp table if I use it normal way?) 2.) Is this created on server side (so is it fast(er than I fetched them all))? 3.) Can I define table name if the table is temporary (for access it as table)? 4.) These server side temp. tables are really destroyed on client's disconnect? Thanks for your help: dd |
Fri, Oct 12 2007 6:11 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Durumdara,
<< Is this not slowing down my queries? (for example: many records is in my table? Or query also collect the records to a temp table if I use it normal way?) >> The query is also using a temporary table if it is read-only in EDB. << 2.) Is this created on server side (so is it fast(er than I fetched them all))? >> Yes, it is created on the server side. << 3.) Can I define table name if the table is temporary (for access it as table)? >> Yes, you can give it a name just like a normal table. << 4.) These server side temp. tables are really destroyed on client's disconnect? >> Yes, they are automatically dropped if the session disconnects. -- Tim Young Elevate Software www.elevatesoft.com |
Mon, Oct 15 2007 5:45 AM | Permanent Link |
Durumdara | << Is this not slowing down my queries? (for example: many records is in my
table? Or query also collect the records to a temp table if I use it normal way?) >> The query is also using a temporary table if it is read-only in EDB. << 2.) Is this created on server side (so is it fast(er than I fetched them all))? >> Yes, it is created on the server side. The "order by" is ignored? I tried with "order by name", but it is also ordered by "id" (priidx) in the EDBTable component or insertion used this order. So I need to make new indexes to the table to sort it by "name" or other field... Or not? Or I know/see st wrong? dd |
Mon, Oct 15 2007 4:35 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Durumdara,
<< The "order by" is ignored? >> Yes, see here: http://www.elevatesoft.com/scripts/newsgrp.dll?action=openmsg&group=17&msg=483&page=1#msg483 << So I need to make new indexes to the table to sort it by "name" or other field... >> Yes, create the table without an ORDER BY and then create any necessary indexes using the CREATE INDEX statement. -- Tim Young Elevate Software www.elevatesoft.com |
This web page was last updated on Saturday, April 27, 2024 at 08:52 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |