Skip to main content
gamedev.net
🔒 Locked

First Database program

Started by moonshot Dec 20, 2004 at 1:20 PM 3 replies 1.5k views
Original Post
moonshot
moonshot
Hello fellow developers, I've pretty much taught myself how to program. Just recently, I finished my first game, a break through clone. It went fairly well and was a great learning experience. Now, I'd like to do something a little more practical in terms of a career. I've worked as a release engineer and a test engineer, but I'd love to be able to get into programming. Actually, I'd love to be able to get into anything right now. I've been out of the field for almost four years after going back to school for a little while. I'm having a terrible time finding a job, and I still don't have my degree. Although I'd love to get my degree first, I simply can't go to school right now and really want to get back into my field. Anyways, I've rambled too long and it's time to get to the point. I'd like to write a database program. I was thinking something along the lines of a project tracker. It would keep to ToDos, deadlines, notes, feature request, and possibly bugs. I know there are tons of programs out there to do these things, but I thought it would be a good learning experience into databases. My problem, is how to get started. There really isn't anything in my books on databases, and very little if there is. What is a real-world way to approach this? Do I use mySQL or excel or something else? What API is best for connecting to databases? Do I use ODBC or something else? I'd like to use something practical that might look good on a resume. Any and all opinions are welcome, including advice on getting back into the computer field. Thank you very much, Jayson Bailey
moonshot aka Jayson Bailey
evolutional
evolutional
There's one database system you could use to play around with the basics and not have to worry about any ODBC connectivity and that's SQLite. It's literally a database in a single file, can be ported aorund anywhere and the API will set one up without anything to install. Other than that, grab a copy of MySQL or MSDE and start playing. If you choose MySQL, you'd be better off using the MySQL API over the ODBC interface as under C/C++ it's probably easier.

Thinking about languages, you never mentioned which one oyu're looking to work with. If you're using something like VB or a .NET lanaguage (VB.NET, C#, JScript.NET) then I'd actually recommend that you use ODBC through the System.Data assembly. The main reason for this is because the .NET APIs have very strong ties with data access and will definitely make things a lot easier for doing the sort of project you're talking about.

Do you have any experience with databases in the past? The main thing you want to learn is the concepts of a relational database; things like what an entity is, how to normalise the data so there's no unnecessary duplication, what a key is and how to structure your tables and queries to get the most out of them. You'll also probably need a decent understanding of SQL, but the basics aren't that hard to grasp.
Arild Fines
Arild Fines
Quote:
Original post by evolutional
Thinking about languages, you never mentioned which one oyu're looking to work with. If you're using something like VB or a .NET lanaguage (VB.NET, C#, JScript.NET) then I'd actually recommend that you use ODBC through the System.Data assembly. The main reason for this is because the .NET APIs have very strong ties with data access and will definitely make things a lot easier for doing the sort of project you're talking about.

Why not a native MySQL .NET provider or System.Data.Sql(for MSDE)? ODBC is kind of icky.
--AnkhSVN - A Visual Studio .NET Addin for the Subversion version control system.[Project site] [IRC channel] [Blog]
evolutional
evolutional
Quote:
Original post by Arild Fines
Why not a native MySQL .NET provider or System.Data.Sql(for MSDE)? ODBC is kind of icky.


True, I'm probably in the (bad) habit of using the ODBC provider in .NET as most of my work is done in ASP.NET (and I've found I can never be sure of the native providers available on the host). But I agree, if a native provider exists you probably should be using that.
moonshot
moonshot
I'm using c++ .NET, so I could use the .NET stuff. I like the sound of SQLite for starters. I have used mySQL before, so that's an option as well.

Any good books on database concepts and design? I've always had questions like what if I want to attach multiple items of the same field. So, for my example of a project tracker program, how would I do multiple deadlines. I see all this type of stuff as c++ objects in my head, but not sure how to translate that into a database design.

Again, many thanks.
moonshot aka Jayson Bailey

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.