MSDN >
論壇首頁
>
SQL Azure — Getting Started
>
Do I need an SQL (or other DB) if I use the .NET Dataset/DataTable constructs?
Do I need an SQL (or other DB) if I use the .NET Dataset/DataTable constructs?
- Hi,
I'm working on a side project for a small pre-school my wife works at. Its basically a simple program to enter student information, progress, etc. I'm doing this mostly as a hobby to learn Visual/Windows programming for fun. This is in Visual C++.
I've gotten the basic program made to enter new student information, and have used the Dataset constructs along with multiple DataTables in .NET (System::Data) to accumulate the data. Since I keep the data in one Dataset object, I can use the XML reader/writer methods to read the data when starting and store the data upon program close to an XML file.
Given this process which seems to work fine, do I need to use some sort of database tool such as SQL? I have never done database work, so I'm completely in the dark here. It is my understanding that a database tool would simply return a table anyway, which I already made.
I haven't gotten to the point where I want to make relations in the data for specific data retrieval/cross-referencing, and given my ignorance of databases, I don't know if I'll lose query methods by not using a formal database.
The other side of this is I don't want to have to install SQL or any other program on the host computer. I simply want to run my program without a complicated install process.
Thanks,
John.
Thanks!- 已編輯johnee_coder Monday, 15 June, 2009 17:10
- 已編輯johnee_coder Monday, 15 June, 2009 17:09
解答
- Hi Johnee,
if you don't want to install SQL or any other program on the host computer then SDS or Azure Storage will be better option. Relational Model of SDS(CTP version) may be launch by end of summer.
To get more information on Windows Azure Storage Service go to Windows Azure homepage http://www.microsoft.com/azure/windowsazure.mspx
Thanks
Kapil- 已標示為解答Rick NegrinMSFT, 版主Wednesday, 17 June, 2009 18:39
所有回覆
- First, let me applaud your enthusiasm and zeal and congratulate you on this effort.If only one person is going to run this app. And this person running only one instance of the app, then, you are ok. Eh, I forgot, the number of students also has to be very small. And you will not have any future need to read your data into other standard reporting systems, for instance ... then you're ok.If on the other hand this app is successful, more persons will definitely want to have access it and some will want to produce reports against the data it generates or even view the data in various (ie: run queries) industry-standard ways. Then, your problem begins.I suggest you use an MSDE if you don't want to install any database on the server. An MSDE can be embedded in your app and act like a database without the need for a server. Alternatively, you can use a Microsoft Access File and deploy your app with it.It will be easy to modify your existing app to use DataAdapter.Fill, Update and SaveChanges() to synchronize your data with the database and get rid of the StreamReader/Writer that you call with the dataset.ToXmlString() and dataSet.FromXmlString()It will help you learn some much cooler backend stuff (eg: sql language) and you'll line up with the way most people solve that kind of problem.
Pita.O: http://www.arizentax.com/ - What? MSDE? MSDE is basically replaced by SQL Express 2005 or later, this is a free download.
The way I read is: Do I need to use SQL to use SQL services to avoid complicated installation processes?
First of all, MSDE is an older solution, and going forward it is a good idea to use SQL server Express. The installation process is long on the client machine. However, download the SQL 2008 Express from http://www.microsoft.com/express/sql/Default.aspx, there are a bunch of training available.
For easy distribution use: http://www.microsoft.com/sqlserver/2008/en/us/compact.aspx, which is SQL Compact Edition and is quite small for use as a redistributable. It isn't as powerful as SQL Express, but it does replace MSDE.
Finally, Access will front-end, quite nicely, the SQL Express. If you want to make something very distributable then, you can find the information at: http://www.microsoft.com/express/ for one of the other FREE tools such as C# Express, VB.NET Express or Visual Studio Web Developer 2008 Express. All of these products are free! (Except for Access.) And all will generate an executable that you can distribute.
NOW, as to SQL Web Services, good question, the data structure is different than the Desktop products like SQL Express 2008, for rignt now I would recommend that you use one of the products that I linked to. Once you get used to using the SQL Express, SQL Compact Edition and one of the development tools, revisit the SQL Services to see what is being offered as this is still in BETA.
Surf UCSO- 已提議為解答Surf4Fun Monday, 15 June, 2009 23:46
@Surf4Fun: Sql Express is a version of MSDE. In fact, every express edition so far is still an MSDE revamped. Your First two words erode the maturity that one expects in this forum and proposing your own response as an answer is ... well, interesting. Please refrain from rude remarks even when you have a different opinion so that the forum can remain professional.
johnee_coder's question has a level of abstraction that I felt it was relevant to maintain in my response. Apparently, you are doing a deep-dive into what the man must do without first discussing the philosophy of whether or why he needs that solution in the first place.
Pita.O: http://www.arizentax.com/- Hi Johnee,
if you don't want to install SQL or any other program on the host computer then SDS or Azure Storage will be better option. Relational Model of SDS(CTP version) may be launch by end of summer.
To get more information on Windows Azure Storage Service go to Windows Azure homepage http://www.microsoft.com/azure/windowsazure.mspx
Thanks
Kapil- 已標示為解答Rick NegrinMSFT, 版主Wednesday, 17 June, 2009 18:39

