Gustav Brock
Gustav at cactus.dk
Tue Jan 11 10:57:44 CST 2011
Hi John Oh, I missed that. That rules out the SQL Server engine and leaves you with the file based options. You can freely include and deploy SQL Server Compact Edition. /gustav >>> jwcolby at colbyconsulting.com 11-01-2011 17:37 >>> Gustav, This is going to be a C# applet that anyone can install on their system. John W. Colby www.ColbyConsulting.com On 1/11/2011 11:42 AM, Gustav Brock wrote: > Hi John > > First, I don't think SQL Server (Express) is overkill as you - as I understand - have several engines running, so one tiny database more a less wouldn't make noticeable difference. > > Then, you could for a single user app use the SQL Server Compact (file based as Access/JET) or even an mdb file. > Or, you could use the built-in XML storage which is simple and fun. Just remember that it writes _all_ tables of the dataset in one go when you call WriteXml() as shown below - if you attempt to write one table only (which can be done), only this table will be held in the XML file, all other tables will get lost. > > This we discussed 2009-09-02: > > For example, read one XML file with one dataset containing several tables: > > private void InitializeDataSet() > { > _dataBaseFile = Path.Combine(_execPath, _dataFileName); > this.DlDataSet.ReadXml(_dataBaseFile); > } > > Write the (modified) dataset to one XML file: > > private void SaveData() > { > this.DlDataSet.WriteXml(_dataBaseFile); > } > > Resulting XML for one table with one record: > > <?xml version="1.0" standalone="yes"?> > <DataSetDL xmlns="http://tempuri.org/DataSetDL.xsd"> > <DataTableSys> > <Id>0</Id> > <SmtpServer>smtp.webpartner.dk</SmtpServer> > <SmtpUserName /> > <SmtpPassword /> > <EmailAddressSend>cactus at cactus.dk</EmailAddressSend> > <EmailAddressReceive>gustav at cactus.dk</EmailAddressReceive> > </DataTableSys> > </DataSetDL> > > /gustav > > > >>>> jwcolby at colbyconsulting.com 11-01-2011 16:58>>> > I want to build a little application where I have a very simple zip code table of about 40 thousand > zip codes, with things like household count, population count, lat and long. My application would > take lists of zip codes and sum the population and household counts, count the zips etc and put a > count on the screen in a table format. > > I already do this using SQL Server to hold the zip code table. I get the zip lists into csv files, > then create a table inside of SQL Server, join on the zip code and sum the population and household > counts. > > Now I want to build an application to do this but SQL Server is way overkill. > > Can I use a csv or even xml to hold the zip table, create an xml table to hold the zip lists entered > by the user and so forth. IOW I need a low impact alternative to SQL Server. Even express is just > way overkill for this. > > Somewhere in the back of my mind I am thinking that ADO.net knows how to load tables, create > relationships between tables, enforce the join etc. IOW do the store entirely in XML and just use > ADO to do the rest. > > Is this possible? Would the speed be acceptable for a join between tblZipMaster and tblZipUserXyz > on Zip count(zip) sum(household) etc. directly in memory.