View Full Version : Developing database applications
mathare
9th March 2010, 12:44
Bit if a longshot this one but someone may be able to help...
I'm trying to get to grips with developing a software application that uses a big database. What I am trying to do is basically write a fancy front end for a database. I haven't yet written (or even really designed) the database yet but I know what sort of data it should contain and roughly how it will be structured.
I have decided to code in Visual Basic as it's the language I know best. To that end I have installed Visual Basic 2008 Express Edition and been through a load of exercises on that so I am happy I know how that works. I haven't covered working with databases in much detail yet though. I have done a few examples with DBs that had already been setup for such training purposes but nothing from scratch as it were.
I bought a book on ADO.NET 2.0 last week and for the past couple of days have been fighting to even get started with it.
I had various versions of SQL Server Express Edition installed (and some part installed) on my PC and I have uninstalled all of that and tried again from the very beginning to work out where I need to be. I am really confused though as I don't really understand what software I need and how I need it configured.
My main questions are, I guess:
1) If you were writing some software that used a database and you hoped that one day you could publish this software, including the database, what database software/format would you use? Is SQL Server Express Edition a sensible choice?
2) Where does one get started trying to understand all this SQL server stuff?
3) I am one man with one computer, not a whole network including servers. Do I need a virtual server installed on my machine to run SQL Server on or can my one PC run it all?
I am very confused!!
The really annoying thing is I have this very clear idea of what this software I wish to develop should do and how it should look to a large degree but I can't get anywhere towards making that vision a reality, nor do I know where to turn for help.
Has anyone used SQL Server Express at all?
Has anyone taught themselves SQL Server from a book? If so, which book?
I'm thinking I may need to invest in a dummies guide to SQL Server or similar just so I can understand that better before tackling this ADO.NET book.
Godspot
9th March 2010, 14:06
Er' I thought about putting you in touch with my brother before - when you had a signature, looking for a job as a software tester or something but
If it's OK with you - well I hope it is I haven't got time to wait for a reply - I'm going to forward this to him in the hope that if he can't help he will certainly be able to put you on to someone who can...
He's responsible for this little lot of mumbled jumble that I don't understand much:
http://www.downloadbuyer.com/
Fortunately you don't mention horses which is a serious positive.
Database is probably my next step but quite content with spreadsheet at the moment.
Win2Win
9th March 2010, 14:15
A number of Apps I've written use MS SQL. It's a pain in the :butthead: compared with MySQL but it still does the job. Proform uses SQL DB.
If you use PHP/MySQL (easy to learn) on a server, you don't have to worry about other folk installing SQL to use the app.
If you're sticking with VB, then just get some examples online using DB's and edit it :)
mathare
9th March 2010, 14:30
Here's the thing then Keith. I am going to be writing some software that uses a database. I will want to publish and distribute this software and obviously want the amount of other supporting applications to be kept to a minimum. One way to do that would be a web-based application I suppose but for various reasons I don't want to go down that route, I want a standalone Windows app. What's the best database format to use for that sort of thing?
Win2Win
9th March 2010, 19:43
SQL Server Express is the one for a PC, but you then have to ensure people running the App have the correct SQL installed, and also that it works on their system, then the App has to work as well across multiple platforms, which is the reason BetTrader, even Google, and many others are now switching to web-based as you only have to get one App working for everyone to use.
TheOldhamWhisper
9th March 2010, 21:37
It depends on how big you are thinking of making it.
SQL Express is Ok - it runs on any Windows XP Pro and above machine but there are one or two compatability issues if the wrong version is installed. You might be wise to try and base it on the same version of SQL Express that ships with Office 2007.
Personally, I use Access - it might be 'old school' but you can develop the whole application and publish it as a freestanding app!
If you need to brush up on Databases, try http://alison.com/ for some free training resources.
If you have access to a server, there is a developer edition of SQL Server but it might be the proverbial sledgehammer and peanut!
TheOldhamWhisper
9th March 2010, 21:39
Oh - yeah - and if you are going down the web route, things get a lot easier as you can use a single database that you personally update and web pages with 'pages behind' controlling the ASP code.
Win2Win
9th March 2010, 21:54
....controlling the ASP code.
Or PHP :wink .... which is easy if you know VB :thumbs
mathare
9th March 2010, 22:17
Thanks all.
I have ordered a book on SQL Server 2008 Express which I will work through, then my ADO.NET book so that I can at least get more of a handle on what I am trying to do. I may look into a web-based version of what I am trying to do but for some reason a standalone Windows app seems more 'normal' to me for this sort of thing.
TheOldhamWhisper
9th March 2010, 22:51
http://www.microsoft.com/express/downloads/
don't know if you have this - but it's a great developers tool! Download the 'All' DVD iso for the full package.
TheOldhamWhisper
9th March 2010, 22:53
and if you want to see some web snippets/asp code try:
www.asp101.com (http://www.asp101.com)
mathare
9th March 2010, 23:08
http://www.microsoft.com/express/downloads/
don't know if you have this - but it's a great developers tool! Download the 'All' DVD iso for the full package.That's the version of Visual Basic I am using, yep :thumbs
crazybadger
10th March 2010, 00:04
This is right up my alley...I'm a .NET Developer/Systems Analyst with my own consultancy and development company in Australia.
To answer your initial questions:
1) If you were writing some software that used a database and you hoped that one day you could publish this software, including the database, what database software/format would you use? Is SQL Server Express Edition a sensible choice? SQL Server Express is a fine version to use. It is the same as the full blown MS SQL Server just that because you use the free version you have less of the fancy features with it, but under the hood it is still MS SQL Server.
2) Where does one get started trying to understand all this SQL server stuff? Online. I don't find too much value in technology books unless it is on something that is new and hasn' been covered much. SQL has been around for a while so there should be some very good tutorials out there. This might be personal preference though...
3) I am one man with one computer, not a whole network including servers. Do I need a virtual server installed on my machine to run SQL Server on or can my one PC run it all? One machine is fine. In fact it is probably better as most of your users would not have a virtual.
There are about a thousand other things we could talk about too but it's a bit hard without know exactly what is going on...
What .NET Framework do you use? Depending on that. You could then consider using LINQ which allows you to use SQL databases without having to bother learning all the connection crap. They encapsulate all the databsae transaction code so that it is easy to CRUD (create, read, update) and you can focus on how your app uses the data instead.
If you are going to make and app then I would steer away from win-forms. You could move to WPF style of app (it's kind of like desktop version of Silverlight which is MS version of Flash but more code centric instead of animation centric). However that is more learning and I'm not sure on you programming skill level.
Some of the advice here is good. Web is definitely a good option and will give you less headaches in terms of managing user specs but sounds like you have already considered it.
I'll stop there as I don't want to start throwing too much out there and make it more confusing. I've done .NET developing for years now and it is very hard to cover all that experience and just pick out relevant bits in a forum chat... so if you have specific questions, want some more info, or want some advice on what you are doing feel free to email me (I will PM you) and I will try to help as much as I can.
Good luck.
Win2Win
10th March 2010, 09:27
What .NET Framework do you use?
That's the other problem with a PC App, the user also has to download 100MB+ and install the correct .NET as well the the SQL server on their computer, whereas web based they just open the normal browser.
crazybadger
10th March 2010, 10:25
That's the other problem with a PC App, the user also has to download 100MB+ and install the correct .NET as well the the SQL server on their computer, whereas web based they just open the normal browser.
Yep but there are ways to improve that now too as MS received a lot of poor feedback about that.
And web development isn't all picnics either. If you want Flash or Silverlight (Microsofts version of flash but more code-centric) then you have to make sure users have them and/or redirect to install pages. And then the different browsers render things differently so you end up having to check for all those and their different versions. And you should test at different screen resolutions, and then if you wanted to add things like AJAX/Javascript you have to make sure that users have that enabled in their browser. Oh and cookies too. :)
Web development is definitely the way forward for most people but it still comes with difficulties and annoyances to consider too.
mathare
10th March 2010, 10:43
Thanks for the input CB. I will be in touch by email shortly :thumbs
Powered by vBulletin™ Version 4.0.5 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.