batch commands with data adaptors

  • Thread starter Thread starter Christian Kuendig
  • Start date Start date
C

Christian Kuendig

Hi there

Well, I noticed that "by design" there are no batch
commands possible with ADO.NET. Well, well, just got to
mention with JDBC it is, since it's kind of transparent.
Of course things are kept easier by leaving it out... but
for a developer or app. architect the "by design" has a
kind of ironic touch when there is no reasoning or advice
how to work around it... I mean, putting together several
remote calls to a single batch call is such a common and
widely spread mechanism in distributed computing that I
can hardly accept a "by design" argument. Anyway there
may be a lot of developers not really caring about that
but I think, in some situations, there are guys who
really have to care about such "details".

Anyway, interesting is now, what would you tell to a java
coder who has to write a .net app and encounters
performance problems while doing some batch work on
business entities. "Use a stored procedure; implement
your data centric domain logic there, close to the data".
Well, this guy keeps arguing that he doesn't want to do
that work in a SP since his business logic should be
extendable and adaptable. He wants to uses polymorphism
and reflective programming to achieve this flexibility in
a highly configurable environment. Well, you might get
the impression he just doesn't like to write TSQL...
might be, might not be, too. fact is that it could be a
tough task to achieve some of the flexibility with SPs
and triggers. Waiting for a release ready version of
Yukon will not be an option either.

He wants to use a batch-sql-command and he wants to use
some kind of framework functionality, too. Since ADO.NET
doesn't provide that by design, he has to rewrite the
data adaptor to produce some kind of a TSQL-script which
is sent to the database and somehow that adaptor should
get needed results from the DB, too (like timestamp
values).

Has anyone done something like that before and would that
person share his or her code with me?
Or has anyone encountered such massive problems (like
accessing the deleted rows in a dataset to actually
delete them in a batch) so that she or he came to the
conclusion that it's far too exhausting to solve that
problem in a proper generic way?

Regards

Christian Kuendig
..NET Competence Center - HSR University, Switzerland
 
Christian,

It is really hard to tell whether you are venting, trolling, or lookng for
real answers.

You can do via .NET anything that SQL Server supports, afaik. If you want to
batch stuff, concatonate your SQL or use a DiffGram. If you don't like those
solutions, write your own thingee that sits adjacent to the server - isn't
that all JDBC is really doing?

No, batch processing isn't idiot proof simple -but if that is really the
bottleneck in your application (and it rarely is) then fix it.
 
Back
Top