473,774 Members | 2,094 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Query Parser for Dataset??


Is there any sort of query engine for use with .NET datasets? I have
an application that has a very small disconnected client database - 2
dozen tables, largest table @100 rows. If loaded into a dataset and
then saved to disk the absolute worst case file wouldn't even be 10
meg...

However, to present data to the user, the application would need to
issue a very complicated select statement; inner & outer joining most
of the tables, nested selects on most of the other tables, several
levels of grouping and aggregation.

Is there any way to do this without using an underlying database?

Mar 8 '06 #1
5 3775
Well usually I would do this with stored procedures and views, but as
you mentioned you need to do it in the dataset.
Datatables have a few filtering mechanisms, but I don't think you will
be getting the kind of power you need out of them.
You really need to be specifying what data you want to select before it
gets to the dataset.
You can of course construct your sql statement in your C#, and then
send it via a data-adapter, and fill your dataset that way.
Just change the SelectCommand's command text to your sql statement. You
won't be able to do updates though.

If you have already considered all of these, I am not sure what else
there is to help.

Mar 8 '06 #2

We can use SQL Server express if we must... But I'd rather not set up
merge replication and all of that stuff if there is an easier way.

The application would be mind boggling simple if I could fetch a
dataset from the server - say through a web service - modify it
disconnected, and then pass the dataset back to the server via the web
service. Then the server could issue the Dataset.Update call to put
the data into SQL Server...

The only catch is that I need to present the data to the user in a grid
that is filled by a very complicated query...

Mar 9 '06 #3
So why can't you have your webservice simply accept an SQL string as a
parameter, and still return a dataset?
Then you can bind the dataset to the grid. You can create your complex
call in the SQL that gets passed.

This way you can have dynamic content in your grid at run time.

Naturally you'd want some sort of authentication on that kind of a web
method since it could potentially be used maliciously.

Mar 9 '06 #4
When I said disconnected I wasn't kidding... :)

Use case: A nurse connects to a network via cellular modem & vpn login
{painfully slow to establish connection}, downloads his/her caseload to
a tablet PC, disconnects. Then nurse drives all over town visiting
patients in their households and updating data. Nurse can add new
households and new patients while disconnected. Supervisors can edit
caseload and patient data on server side while nurse is disconnected.
Tablet can be turned on/off and application may be entered/exited at
will. Every other day or so nurse reconnects to network and
synchronizes with server...

The dataset is very small; one nurse's caseload - largest conceivable
real world caseload is @50 households containig @70 patients. The
dataset consists primarily of hierarchical household to patient and
mother to child relationships; most of the rest of the dataset is
enumeration lookup tables and some 1-many relationships; aka
inner/outer joins and nested selects when we do the complicated query.
In order to be HIPPA compliant we would naturally encrypt the dataset
if we saved it to the tablet or while it was being sent to/from server,
and of course the web service would be secure too...

The gotcha is a couple of things that need to have a realtime query
parser available while disconnected:

- The opening screen issues the complicated query to present the nurse
with his/her caseload. If nurse adds a new household and/or patient
they need to appear in the correct spot.
- Nurses can dynamically configure main grid to be "household centric"
or "patient centric" etc..
- Nurses need a rudimentary form of adhoc query capability to find
patients by bizarre combinations of demographics or medical conditions

The dataset approach might not work - I'm just pondering options
aloud... As a nurse can add a new patient while disconnected and a
supervisor can also change the caseload on the server while
disconnected this application might really need merge replication...
It just seems like I'm squirrel hunting with an elephant gun to
configure and administer 100+ tablets with SQL Server and merge
replication for a 70 row grid...

Mar 9 '06 #5
Sure.

I don't think you want to be putting MSDE on every tablet.
You can cache the dataset serialised and encoded to the local disk.
Essentially have this serialised dataset as a pretend local database,
peforming all your queries in your code;
keep copies fo the enum tables in the cache as well. I guess you still
have to figure out how to create complex queries against your dataset.
And that's the part I'm not sure on beyond the basic filters for the
dataview.

Otherwise your logic sounds good to me. Perhaps you need to just to
coded lookups for all the nested relationships against each table as
they are requested.

Mar 9 '06 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

7
4031
by: Phin | last post by:
I need your HELP! I've seen all the posts on using Crystal Reports within vs.net (vb.net) and changing a SQL query at runtime. When I tried to pass in a dataset into the crystal report at runtime, the report still showed the results from the default query (from within the Crystal Report). Then I tried the XSD solution where you define a dataset (that mataches the database and the Crystal Report) and have the Crystal Report use this....
5
9604
by: Kenneth P | last post by:
Hi, I get a Parser Error message when I try to start my asp.net app. Parser Error Message: Could not load type 'DiskoWeb.dLogin'. I have a code behind file and it's class name is dLogin. This the error message
4
302
by: Derek Van Cuyk | last post by:
Hi everyone! I'm trying to write a web application in school that utilizes a MS Access database. I can read and everything fine from it but when I try to add a new record I get an exception that states: "Operation must use an updateable query" I know it has to do with the update command on the OleDbDataAdapter. I've tried looking for the problem on the net and newsgroups but I don't seem to have the same problems as everyone else. Please,...
1
2022
by: cindy | last post by:
Get data into datatable, add to dataset dsSearch " Get data into datatable, add to dataset dsSearch Using In-Memory SQL Engine join the tables and select the filenames from the join, add to dataset dsSearch CODE ON http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=3994&lngWId=10 using SQL connection get data from view on sql server, add to dataset dsSearch
8
3007
by: Jim in Arizona | last post by:
I've been using an example out of a book to be able to edit the rows in a database. I am getting the following error: ======================================================== ======================================================== Server Error in '/' Application. -------------------------------------------------------------------------------- Operation must use an updateable query. Description: An unhandled exception occurred during...
3
2996
by: filip.norrgard | last post by:
Hi All! I've been developing an ASP.Net 2.0 web application using the Visual Studio 2005 tools. Currently datagrids on a page are filled with data from a dataset (a .xsd file in the "project") that, in turn, gets the data from MySql server. Locally testing it on my PC (Windows XP SP2, FYI) it works and no errors appear. However, when I upload it to the webserver (Windows 2003 Web Edit. Server) I get the a parser error on the dataset...
2
17653
by: =?Utf-8?B?Q2hyaXM=?= | last post by:
How can I run this query against a table in my Access database? I don't know hwo to use it in C#. In VB I would use .Recordset = "some sql statement". How do I do this in C#? //I get a vlaue form a cell and apply it to the SQL statement commandCol = scriptDataGridView.FormattedValue.ToString(); string sCommand = "SELECT CommandString FROM Commands WHERE CommandName = " + commandCol; //This reutne a valie SQL statement which will return...
6
5363
by: Bobby Edward | last post by:
Using ASP.NET 3.5 and MySQL (thru DevArt MyDirect.NET)... On the production server I get a "Parser Error" for every XSD dataset. It works perfect on my dev machine. But, on the production server I get the error. To troubleshoot the issue I went back to my dev machine and changed all the connectionstrings from localhost to the remote/production server db and made sure everything works fine. I then uploaded all the files to the...
0
9621
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9454
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10106
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10040
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9914
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8939
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
5484
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
2
3611
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2852
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.