Question: SQL Replication vs. Push/Pull

C

Chris

I have a question from you mobile gurus regarding an upcoming PocketPC
project I will be working on which can be summarized as:

A PocketPC based application which will require users to log in and receive
user-specific form data from values stored in a SQL 2K database. The DB
values will populate a template form on the device (or one will be drawn
dynamically based on the values queried from the DB). The end-user then
fills in additional values and sends the resulting data back to the DB.

Some restraints:
*We can only use synchronization via the cradle to move data back and forth
from the device.

Question:
*Would it be best to use SQL / SQL CE with replication, allowing users to
receive updated DB values once they log in to the device and sync? In the
past, I've used this method to populate a form application which already
exists on the device.

OR

*Is it better to use a Push/Pull (ie. query from the device) when syncing,
and use .Net or eVC to call stored procedures and get the data to the
device?

Your opinion is appreciated!

Thanks,
Chris
 
S

Simone

Sounds like either way would work for you. I would prefer to choose
replication if I already had a SQL 2K database in place. I would only chose
RDA if I had to pull data from another database, like Oracle.
 
S

Simone

Correction: RDA cannot pull data from Oracle database.
RDA might be less overhead than Replication.
Please correct me if I am wrong.
 
C

Chris

Thanks for your input.
I wanted to make sure there wasn't something I was completely overlooking.

As far as a presentation/business logic layer to display data replicated to
the device from SQL 2K, is .Net CF stable enough for use in a production
environment? If so, would it be feasible to use ASP.Net or a form
application to populate synchronized data?

The last time I undertook something of this nature, it was using eVB, which
was definitely *not* ready for a production environment.

Many thanks for your input-
 
S

Simone

I am not an expert yet, but I can tell you from my three months experience.
As far as stable, I think the .NET CF is stable. There are lots of
production apps out there. I am working on one. You might encounter some
features that are not yet, the CE team is coming up with a bunch of new
features.

Users often complain SQL CE insert and update performance is a little slow.
But depending on your data requirents it could be enough.
You need some patience when you are compiling/debugging because the emulator
is still pretty slow, it takes a while to compile. If you use wireless it is
faster.

But so far I am enjoying working with it, and I bet most people are too.

Hope it helps.
Simone
 
R

Rick Winscot

Chris,

I have worked on dozens of handheld applications - most of which revolve
around SQL CE. I have to say that SQL CE 2.0 is a great tool... and of all
the technologies - RDA is a real performer.

However, for sake of keeping an open mind. Configuration of RDA is
involved, and due to the pieces in the RDA puzzle... things _can_ break.
Debugging is already hard enough - and trying to find out what the problem
is... can cause bouts of temporary insanity. This is especially true if you
have a couple developers at your location... a single configuration change
in one of the many steps can cause your app to fail. That is a stability
issue...

As a general rule - if the application requires a fair amount of logic in
the pushing / pulling of data... even though RDA is a real performer, it is
always nice to be able to write a web service that can 'talk' to your
application and simplify data updates. I have found that debugging is far
easier with this approach...

Seriously - If you haven't tried web services... Check out the (great)
article that Derek Mitchell wrote on www.devbuzz.com.
http://www.devbuzz.com/content/zinc_compact_framework_web_service_xml_pg1.as
p

Cheers,

Rick Winscot
rickly@zyche dot com
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top