Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
UDF's second rate citizen in Rushmore ?
Message
From
20/09/2006 04:38:37
 
 
To
06/09/2006 13:02:23
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
01151219
Message ID:
01155395
Views:
29
concerning uds as a "second rate citizen", I see rushmore has to find the index it may use to optimize, also if expressions don't match exactly:
create cursor curTest1 (cName C(10))
index on upper(cName) tag xName
create cursor curTest2 (cName C(10))
index on upper(cName) tag xName

select * from curTest1, curTest2 where upper(curTest1.cName)="A"
upper(curTest1.cName) does not exactly match upper(cName), but you need to qualify which cName field is meant and rushmore still identifies it can use xName of curTest1.

With udfs as index expressions the problem is, this type of clearing the expression get's too complicated, isn't that the problem Aleksey?

So how about a new feature of forcing the use of an index within the SQL:
select * from curTest1, curTest2 where curTest1:xName="A"
So table:tagname would force the use of the tag of the table. That way it doesn't matter what expression is used to build the index. As long as the index is there, it can be used. Rushmore does not need to find out if an exression can be replaced by using the index, the developer forces the use of the index. The developer then can decide, if he uses this new feature or writes the query more compatible to other databases and must cope with the limitations rushmore has about UDFs.

Bye, Olaf.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform