Some of the missing function in TMSTable

Discussion of open issues, suggestions and bugs regarding SDAC (SQL Server Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
JGordon
Posts: 10
Joined: Tue 27 Sep 2011 16:43

Some of the missing function in TMSTable

Post by JGordon » Tue 27 Sep 2011 17:12

Hi,

I have a number of projects I am moving to SqlServer from Paradox. Your product does most of the TTable functions with some exceptions. I have gone ahead and implemented some of those in a component descended from your TMSTable. I have implemented:

CreateTable by using SQL Create Table
EmptyTable by using SQL Delete
IndexName, IndexDefs by using MSMetadata
SetRange, CancelRange by using FilterSQL

It was not too hard to implement these, but it occures to me that you didn't implement them for a reason. I'm assume that the reason is that they are less used items and there is little return (other priorities are more important). Is this assumption correct, or are there 'gotchas' that I am not yet seeing on any of these?

Thanks,

AndreyZ

Post by AndreyZ » Wed 28 Sep 2011 12:07

The CreateTable method is not implemented because it is not always possible to choose the exact SQL Server type that user wants to have in a newly created table.
We plan to add the EmptyTable method to all DAC products which don't have it.
When you execute a query to a database, SQL Server chooses the fastest index for this particular query. That's why SDAC doesn't have the IndexName and IndexDefs properties.
SDAC does not support the SetRange and CancelRange methods. You can use the TCustomDADataSet.Filter property for local filtering of a dataset and the TCustomDADataSet.FilterSQL property for filtering on the server side instead.

JGordon
Posts: 10
Joined: Tue 27 Sep 2011 16:43

Post by JGordon » Wed 28 Sep 2011 14:09

Thank you, that is exactly what I was looking for.

Post Reply