• Welcome! The TrekBBS is the number one place to chat about Star Trek with like-minded fans.
    If you are not already a member then please register an account and join in the discussion!

Database Creation

TheBrew

Vice Admiral
Admiral
I started a new summer position at an Army post. I was tasked this morning with going through all of the work orders and seeing what parts are on order, what have arrived, ect., when I had the bright idea of making a web-based database for it so that it will be much easier for anyone in my department to call up the work orders and see where they are at. One problem: I've never created a web-based database before.

It's been half a decade since I cracked open some code (I have no idea what is the latest and greatest), so can anyone point me in the right direction on how to create a web database?

The design requirements are pretty simply: I need to create entries, edit entries, expand entries (add new fields), and be able to sort and display them. Any help is appreciated.
 
Is money an object? You can make a decent database app using only free tools: PHP, MySQL/PostgreSQL, and Apache. If you want an easy, self-contained setup, there's EasyPHP, XAMPP, Uniform Server, and others. They all do roughly the same thing: encapsulate a web server with PHP and MySQL ready to roll.

There are plenty of web application frameworks out there that sit on top of your database, too. Xataface, Qcodo, and many others.

Really, it depends on how much coding you want to do yourself, and whether you have any money to spend.
 
If you don't expect high concurrency -- i.e., a high number of users hitting the system at the same time -- then you could use Microsoft Access -- or a set of flat files.
 
Well, I have no money to spend. As for coding, I would like to keep it as simple as possible. As for time, this project I guess has a due date of my last day here during the summer (beginning of August), but I've been given a lot of flexibility time-wise besides that.

I would like to learn a database system over the summer as I think that would be a good skill to learn. Then, with my Poli Sci degree that I will be finishing, I can work of my plan to rule the world through computers!!!!!

Or perhaps I've said too much... :p
 
Since you have no budget, I would definitely recommend the PHP/SQL combo. Are you planning to run this on a real server, or do you intend to keep it on a PC? If it's going to be a low-load database, it's fine to have it on a PC. Just make sure something is backing it up regularly. :)

You will likely need some simple tools for database management. MPanel is a good one for simple database structuring. phpMyAdmin is very popular and capable. To actually build your application, you should look into an application framework, such as the ones I mentioned before (Xataface and Qcodo). There are plenty out there. It sounds like all you really want is one that can throw up a simple form for entering and modifying records. Pretty much any application framework can do that, and lots more. Sourceforge is a good source for them.

If you are interested in more detailed help, I would be happy to provide it. :)
 
Right now I am twiddling my thumbs (as I don't have a security card yet for my own computer), but I hope to host this on a local server. Once I get my CAT card (tomorrow), I can start some implementation on my computer and see how a test database shapes up. I'll check out Sourceforge and ask more questions when they arise. I looked up a PHP/SQL tutorial on creating a simple database, so I will try that starting tomorrow.

Thanks for the help everyone.
 
FYI, you don't need any database software to begin designing your database schema -- the tables, fields, expected SQL statements, etc. If you have time, start on that now. A good database design will make your life easier. A bad database design will make your life a lot more difficult.
 
This is true. It helps to know exactly what information you need to store, and what potential relationships you might want to establish between records.
 
I've already got the basic design down. I've graphed out the relationships between the data on a sheet of paper. I am pretty sure I have the heigharchy down as I would like it. The entries themselves aren't going to hold too much data, just the status of each work order and some basic info. I had actually sketched it out before I thought that a web-database would be the best implementation for my requirements.
 
I recommend mySQL for the backend since it's free!

For the front end I've heard Ruby on Rails is a nice option but I haven't had a chance to play with it yet.

Java has a free ide (Eclipse) that takes a while to learn but you may find it worth it. If you're doing oo design then I recommend Hibernate as a nice bridge between your oo app and your relational database.
 
I've already got the basic design down. I've graphed out the relationships between the data on a sheet of paper. I am pretty sure I have the heigharchy down as I would like it. The entries themselves aren't going to hold too much data, just the status of each work order and some basic info. I had actually sketched it out before I thought that a web-database would be the best implementation for my requirements.

I don't know how much you know about database design, so if you'd like me to take a look at your schema, I'd be glad to give you some tips. For instance, you want to make sure you pick the right column type for each field. For statuses, rather than a simple string (VARCHAR, etc.), you could get better performance using an enumeration. Just little things like that.

I work at a software company and do quite a bit of database design, implementation, and maintenance, so I would be happy to look at what you have.
 
I found out that the project was assigned to someone else last week and my supervisor forgot. So thanks for all the help, but I will not be needing to set up a database anymore. Right now I have my accountant hat on. Joy.
 
If you are not already a member then please register an account and join in the discussion!

Sign up / Register


Back
Top