1

First, please be aware I am definitely a beginner when it comes to server maintenance or network administration. That being said, if I am asking this question in the wrong forum, please feel free to redirect me.

Despite my lack of experience in the IT field (I'm a mechanical engineer), I am still by far the most qualified in our small office to handle issues like this. I was a software consultant for several years out of college, so I can recall enough SQL and C#/C++ to get by if I need to, but want to keep it as technically light as possible.

Right now I'm using Excel to handle all documentation control and product data sheet creation. These are functions probably best suited for a database. I've toyed with OpenOffice Base as a good free alternative, but unless I'm missing something, it seems to come up short on features that a full-fledged SQL Server or PL/SQL database would have.

This should be expected, seeing as it's free, but I hear a lot of talk about mySQL as a good starting place, especially if I intend to start publishing reports or creating forms for data entry.

On all of these issues I'm a bit clueless, but first thing's first: What is the best option to get started with a database product (preferably free) that I can develop into an office-wide server once I know what I'm doing?

NoCatharsis
  • 133
  • 2
  • 5

5 Answers5

2

If you have Excel, I'm assuming you have Access? I'll likely get downvoted for suggesting it, but it really is a simple way to get started with a database, and yes, there is a migration path to SQL down the road as you grow.

It has a simple to use interface, various wizards for form generation, handling relationships between tables and objects, etc. The problem with Access is that people don't know when to stop using Access and graduate to a two-tiered application with a separate database backend.

gravyface
  • 13,947
  • 16
  • 65
  • 100
  • I wouldn't downvote you for suggesting Access. I assumed that the asker had already discarded it from consideration, but if not then they should consider it. They might consider it and say "no", but there's nothing wrong with considering it. – Rob Moir Nov 23 '10 at 19:02
  • I did a CTRL-F to double-check if he (or someone else) mentioned it, but they hadn't. Surprised actually. – gravyface Nov 23 '10 at 19:05
  • Well I have considered it, but actually I don't have it included with my license of MS Office. I believe there may be a spare license in the office, though, and I could check into this. I guess I had just assumed it might be better to set up a database than to learn Access (never used it before). – NoCatharsis Nov 23 '10 at 19:21
  • 1
    It all depends on how much coding you're planning on doing. With something like SQL, MySQL, Postgres SQL, etc., all you're getting is a RDMS, not a development tool; they're all very good databases in their own respect, but if you expect somebody non-technical to use your database, you're going to need to abstract away some of the complexity with forms. Since it doesn't sound like you want to become a programmer, Access was built for small data-driven applications like yours, plus it integrates tightly with Office for creating Excel/Word/Outlook, output, mail merges, etc. – gravyface Nov 23 '10 at 19:35
  • Thanks for the suggestion. I would certainly give Access a shot in this situation, but I found out there are no licenses in my office. I am going to give the free options (e.g. OOBase) a shot before I try to sell the Access idea to my boss. – NoCatharsis Nov 24 '10 at 14:14
1

You can get a good idea of the capabilities of Open Office Base from their Wiki. Open Office Base comes with a built in light-weight (personal) database. You are right in thinking you may want a better database for shared access. mySQL and Postgres are both open source databases with good functionality. Both will run on Windows or Linux. For office use you will want to ensure they are using TCP/IP on the servers address (not localhost or 127.0.0.1. In either case, I would suggest using the JDBC drivers.

BillThor
  • 27,354
  • 3
  • 35
  • 69
1

I'd say mySQL, postgres SQL and Microsoft's SQL Server express are all good places to start. You can download and use them all for free, which actually makes trying them yourself and deciding easy enough - you'll only have to 'pay' the time it takes to trial them.

If you're generally familiar with the Microsoft way of doing things, and your comment about being familiar with c# suggests you might be, then this might tip you towards the Microsoft option.

Rob Moir
  • 31,664
  • 6
  • 58
  • 86
1

It's a small office. That sounds like datasheet import / report generation. I'd say don't bother with concurrency problems, high availability and such, but with how to integrate existent base. I don't think you need all the available SQL power more than you need good integration/migration tools.

My 2 cents is: go and see if the features of OpenBase meet your current requirements. If so, go with it. If you really know you need the SQL power of mysql or postgresql you can start using OpenBase as a frontend with either one as a backend. As far as I can tell, mysql/postgresql aren't exactly seen/used as office solutions so in your case you may not get all the help you need when asking for it on the community forums. I advise against using these directly for implementing office solutions. On the other hand I vouch for OpenBase to be used at least as a frontend, if not together with its "native" sql backend, hsqldb. You will be able to easily integrate current solutions and/or migrate existent data. OpenBaseis a good alternative to microsoft office solutions so I won't bother talking about the latter here.

Giacomo1968
  • 3,522
  • 25
  • 38
user237419
  • 1,663
  • 8
  • 8
  • Sorry for the naive question: What exactly is hsqldb? Is that a separate application I would use to access the database through back-end queries I assume? – NoCatharsis Nov 23 '10 at 18:34
  • 1
    Not naive, my bad. It's the default database management system used by openbase, as far as I know. mysql and postgresql are (relational) database management systems too. It supports the SQL language, standards-compliant (at least as much as we the end-users care about standards). – user237419 Nov 23 '10 at 18:45
1

You said openoffice base doesn't have the

...full-fledged SQL Server or PL/SQL database would have.

That's correct. But if you install mysql, as someone else suggested, you can use openoffice as a front-end. Openoffice makes it a lot easier to create the base itself, forms and reports and so on.

And when you have created a form you can send the base file to co-workers and they can connect to the same server.

I don't know Access compares to that solution, but this works very well for me. I also believe Access does not have full-fledged database server.